본문 바로가기

전체 글980

Python 기존의 csv 파일에 판다스 데이터를 추가하는 방법은 무엇인가요?, How to add pandas data to an existing csv file? 질문 저는 pandas의 to_csv() 함수를 사용하여 기존의 csv 파일에 데이터프레임을 추가할 수 있는지 알고 싶습니다. csv 파일은 로드된 데이터와 동일한 구조를 가지고 있습니다. 답변 판다스 to_csv 함수에서는 파이썬 쓰기 모드를 지정할 수 있습니다. 추가 모드는 'a'입니다. 귀하의 경우: df.to_csv('my_csv.csv', mode='a', header=False) 기본 모드는 'w'입니다. 파일이 처음에 없을 수 있는 경우, 다음과 같은 변형을 사용하여 첫 번째 쓰기 시 헤더가 인쇄되도록 할 수 있습니다: output_path='my_csv.csv' df.to_csv(output_path, mode='a', header=not os.path.exists(output_path)) 2023. 11. 24.
Python 왜 datetime.datetime.utcnow()은 시간대 정보를 포함하지 않을까요?, Why does datetime.datetime.utcnow() not contain timezone information? 질문 datetime.datetime.utcnow() 왜 이 datetime은 명시적으로 UTC datetime임에도 불구하고 시간대 정보가 없는 걸까요? 이게 tzinfo를 포함하고 있을 것으로 예상했는데요. 답변 Python 3.2 이후로는 datetime 모듈에 datetime.timezone이 포함되어 있습니다. datetime.utcnow()의 문서에는 다음과 같이 나와 있습니다: 인식 가능한 현재 UTC 날짜 및 시간은 datetime.now(timezone.utc)를 호출하여 얻을 수 있습니다. 따라서, datetime.utcnow()은 tzinfo를 설정하지 않으며 UTC임을 나타내지 않지만, datetime.now(datetime.timezone.utc)는 tzinfo가 설정된 UTC 시.. 2023. 11. 24.
Python 파이썬은 단축 평가를 지원합니까?, Does Python support short-circuiting? 질문 파이썬은 부울 표현식에서 단축 평가를 지원합니까? 답변 Yep, both and and or operators short-circuit -- see the docs. 예, and 및 or 연산자는 모두 단락 평가를 수행합니다 -- 문서를 참조하세요. 2023. 11. 24.
Python 이진 파일을 읽고 각 바이트를 반복하는 것. [중복], Reading binary file and looping over each byte [duplicate] 질문 파이썬에서 이진 파일을 읽고 해당 파일의 각 바이트를 반복하는 방법은 무엇인가요? 답변 파이썬 >= 3.8 왈러스 연산자 (:=) 덕분에 솔루션이 꽤 짧습니다. 파일에서 bytes 객체를 읽고 변수 byte에 할당합니다. with open("myfile", "rb") as f: while (byte := f.read(1)): # 바이트로 작업 수행. 파이썬 >= 3 이전 파이썬 3 버전에서는 약간 더 자세한 방법을 사용해야 합니다: with open("myfile", "rb") as f: byte = f.read(1) while byte != b"": # 바이트로 작업 수행. byte = f.read(1) 혹은 benhoyt이 말한 대로, 같지 않음을 건너뛰고 b""이 거짓으로 평가되는 사실을 이용.. 2023. 11. 24.
Python 각 서브플롯에 제목을 추가하는 방법, How to add a title to each subplot 질문 나는 여러 개의 서브플롯을 포함한 하나의 그림을 가지고 있습니다. fig = plt.figure(num=None, figsize=(26, 12), dpi=80, facecolor='w', edgecolor='k') fig.canvas.set_window_title('창 제목') # Axes 인스턴스를 반환합니다 ax = fig.add_subplot(311) ax2 = fig.add_subplot(312) ax3 = fig.add_subplot(313) 서브플롯에 제목을 추가하는 방법은 무엇인가요? fig.suptitle은 모든 그래프에 제목을 추가하며, ax.set_title()은 존재하지만 후자는 서브플롯에 제목을 추가하지 않습니다. 도움을 주셔서 감사합니다. 편집: set_title()에 대한 .. 2023. 11. 24.
Python 파이썬의 time.clock()와 time.time()의 정확도는 어떻게 되나요?, Python's time.clock() vs. time.time() accuracy? 질문 파이썬에서 시간 측정에는 어떤 것을 사용하는 것이 더 좋을까요? time.clock() 또는 time.time()? 어느 쪽이 더 정확도가 높을까요? 예를 들어: start = time.clock() ... 어떤 작업 수행 elapsed = (time.clock() - start) 대신 start = time.time() ... 어떤 작업 수행 elapsed = (time.time() - start) 답변 3.3 버전부터 time.clock()은 사용이 중지되었으며, 대신 time.process_time() 또는 time.perf_counter()를 사용하는 것이 권장됩니다. 이전에는 2.7 버전에서 time 모듈 문서에 따르면: time.clock() Unix에서는 현재 프로세서 시간을 초 단위로.. 2023. 11. 24.
Python 장고(Django)가 실행하는 원시 SQL 쿼리를 어떻게 볼 수 있나요?, How can I see the raw SQL queries Django is running? 질문 장고가 쿼리를 실행하는 동안 실행되는 SQL을 표시하는 방법이 있을까요? 답변 문서 FAQ를 참조하세요: "Django가 실행하는 원시 SQL 쿼리를 어떻게 볼 수 있나요?" django.db.connection.queries에는 SQL 쿼리의 목록이 포함되어 있습니다: from django.db import connection print(connection.queries) 쿼리셋에는 실행될 쿼리를 포함하는 query 속성도 있습니다: print(MyModel.objects.filter(name="my name").query) 쿼리의 출력이 유효한 SQL이 아님에 유의하세요: "Django는 실제로 매개변수를 보간(interpolate)하지 않습니다. 대신 쿼리와 매개변수를 별도로 데이터베이스 어댑.. 2023. 11. 24.
Python Pandas 데이터프레임을 디스크에 반전 가능하게 저장하고 로드하는 방법은 무엇인가요?, How to reversibly store and load a Pandas dataframe to/from disk 질문 지금은 스크립트를 실행할 때마다 상당히 큰 CSV를 데이터프레임으로 가져오고 있습니다. 스크립트가 실행되는 동안 그 데이터프레임을 계속 사용할 수 있는 좋은 해결책이 있을까요? 그렇게 하면 스크립트가 실행되는 동안 시간을 기다리는 데에 모든 시간을 보내지 않아도 될 것 같습니다. 답변 가장 쉬운 방법은 pickle을 사용하여 to_pickle으로 저장하는 것입니다: df.to_pickle(file_name) # 저장할 위치, 일반적으로 .pkl 형식으로 저장합니다. 그런 다음 다음을 사용하여 다시 불러올 수 있습니다: df = pd.read_pickle(file_name) 참고: 0.11.1 이전에는 save와 load가 이 작업을 수행하는 유일한 방법이었습니다 (지금은 각각 to_pickle과 r.. 2023. 11. 24.