모든 데이터에는 처음에 "DOB"(생년월일)가 자동으로 할당됩니다. 따라서 어느 시점에서는 데이터를 처리할 때 날짜와 시간 데이터를 마주치는 것이 불가피합니다. 이 튜토리얼에서는 Python의 datetime 모듈과 pandas 및 pytz와 같은 일부 주변 라이브러리를 사용하는 방법을 안내합니다.
Python에서 날짜 및 시간과 관련된 모든 것은 datetime 모듈에 의해 처리되며, 이 모듈은 모듈을 5개의 다른 클래스로 더 나눕니다. 클래스는 단순히 객체에 해당하는 데이터 유형입니다. 아래 그림은 일반적으로 사용되는 속성 및 예제와 함께 Python의 5가지 날짜/시간 클래스를 요약합니다.
날짜와 시간의 영숫자 특성으로 인해 비슷한 날짜와 시간을 Python으로 구문 분석하면 문자열로 해석되는 경우가 많습니다. 이 섹션에서는 문자열 목록을 날짜/시간 형식으로 구문 분석하는 방법과 날짜 및 시간 데이터를 데이터 프레임의 개별 열로 분할하고 결합하는 방법을 다룹니다.
Snippet 1 인쇄
하지만 날짜 시간 형식이 비정상적이거나 모호한 방식으로 지정되면 어떻게 될까요? 일반적인 질문은 미국과 유럽에서 날짜 시간을 작성하는 방식의 차이입니다. 미국 형식에서는 월이 먼저 오고, 유럽 형식에서는 날짜가 먼저 옵니다.
기본적으로 pandas의 to_datetime은 12자리(
또는 strftime() 메서드를 사용하면 문자열을 반환하기 전에 날짜/시간 형식을 지정하는 데 도움이 됩니다. 다음 예에서는 원래 날짜 시간 사이의 대시(-)가 백슬래시(/)로 바뀌고 숫자 월(02)이 약어 영어 용어(Feb)로 대체됩니다.
날짜(일, 월, 연도)와 시간(시, 분, 초)을 해석하는 방법은 다양하므로 다양한 형식 코드를 이해하는 것이 중요합니다. 아래 표는 일반적으로 사용되는 형식 코드에 대한 치트 시트입니다.
시간대 정보가 없는 datetime 객체를 "naive"라고 하며, 시간대 정보(보통 GMT에 해당하는 끝에 +HH:MM이 있음)가 있는 객체는 "aware"로 간주됩니다. ". 아마도 Python에서 가장 포괄적인 라이브러리 중 하나인 pytz는 시간대 계산 작업을 단순화합니다. 다음 코드 조각은 "순진한" 날짜 객체와 "인식하는" 날짜/시간 객체 사이를 변환하는 방법을 보여 주며 다양한 시간대를 사용할 수 있습니다. 코드의 마지막 부분에서는 주어진 datetime 객체를 현지 시간대로 변환하는 방법도 보여줍니다. 이 예에서는 일본과 독일의 시간대 코드를 보여줍니다. 다른 지역의 경우 여기에서 참조할 수 있습니다.
조각 2의 출력
때때로 두 날짜/시간을 조건부로 비교해야 합니다. 두 개의 데이터 프레임이 있다고 가정해 보겠습니다. 첫 번째에는 날짜/시간 열이 하나만 포함되어 있고 두 번째에는 간격을 나타내는 두 개의 열과 나머지 열의 기타 정보가 포함되어 있습니다. 목표는 두 번째 데이터 프레임의 간격 내에 해당하는 경우 첫 번째 데이터 프레임에서 일치하는 날짜/시간을 찾고, 그렇다면 다른 열을 복사하는 것입니다.
이를 달성하는 한 가지 방법은 pd.Interval을 사용하여 두 날짜/시간의 간격을 압축한 다음 나중에 조건부로 날짜/시간을 비교하고 매핑하는 데 사용할 수 있는 데이터 프레임의 인덱스로 할당하는 것입니다. 시간 조건이 충족되면 for 루프를 사용하여 관심 있는 열을 복사하면 됩니다.
원문: https://towardsdatascience.com/how-to-work-with-datetime-in-python-26d4092dc484
위 내용은 Python에서 DateTime을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!