>  기사  >  백엔드 개발  >  pd.to_datetime()을 사용하여 Pandas의 날짜 및 시간 열을 효율적으로 결합하는 방법은 무엇입니까?

pd.to_datetime()을 사용하여 Pandas의 날짜 및 시간 열을 효율적으로 결합하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-16 14:01:03316검색

How to efficiently combine date and time columns in Pandas with pd.to_datetime()?

Pandas의 날짜 및 시간 열을 pd.to_datetime()과 결합

Pandas에서 날짜 및 시간 데이터로 작업할 때 종종 필요한 경우가 있습니다. 별도의 열을 단일 날짜/시간 객체로 결합합니다. 이를 수행하는 한 가지 방법은 pd.to_datetime() 함수를 사용하는 것입니다.

문제 설명

다음과 같이 '날짜' 및 '시간' 열이 있는 데이터 프레임을 고려해보세요. 아래에 표시됩니다.

Date      Time
01-06-2013  23:00:00
02-06-2013  01:00:00
02-06-2013  21:00:00
02-06-2013  22:00:00
02-06-2013  23:00:00
03-06-2013  01:00:00
03-06-2013  21:00:00
03-06-2013  22:00:00
03-06-2013  23:00:00
04-06-2013  01:00:00

우리의 목표는 이 두 열을 하나의 '날짜 및 시간'으로 결합하는 것입니다.

문자열 연결을 사용한 솔루션

한 가지 접근 방식은 '날짜' 및 '시간' 열을 문자열로 연결한 다음 결과 문자열을 날짜/시간 객체로 변환하는 것입니다. pd.to_datetime() 사용:

result = pd.to_datetime(df['Date'] + ' ' + df['Time'])

연결된 문자열을 계열로 변환합니다.

형식 매개변수를 사용하는 솔루션

또는 pd.to_datetime()의 형식 매개변수를 사용하여 결합된 문자열의 정확한 형식을 지정할 수 있습니다.

result = pd.to_datetime(df['Date'] + df['Time'], format='%m-%d-%Y %H:%M:%S')

이 접근 방식은 특히 대규모 작업을 처리할 때 이전 접근 방식보다 빠릅니다.

성능 비교

%%timeit 마법 명령을 사용하면 두 접근 방식의 성능을 비교할 수 있습니다.

df = pd.concat([df for _ in range(1000000)]).reset_index(drop=True)

%timeit pd.to_datetime(df['Date'] + ' ' + df['Time'])

%timeit pd.to_datetime(df['Date'] + df['Time'], format='%m-%d-%Y %H:%M:%S')

두 번째 대규모 데이터 세트의 경우 형식 매개변수를 사용하는 접근 방식이 훨씬 더 빠릅니다.

위 내용은 pd.to_datetime()을 사용하여 Pandas의 날짜 및 시간 열을 효율적으로 결합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.