>백엔드 개발 >파이썬 튜토리얼 >Pandas에서 날짜와 시간 열을 결합하는 방법은 무엇입니까?

Pandas에서 날짜와 시간 열을 결합하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-15 19:10:03822검색

How to Combine Date and Time Columns in Pandas?

Pandas를 사용하여 날짜 및 시간 열 결합

시간 데이터로 작업할 때 단일 데이터를 얻기 위해 날짜 및 시간 열을 결합해야 하는 경우가 종종 있습니다. 타임스탬프 값. Pandas는 이를 달성하기 위해 pd.to_datetime() 함수를 포함하여 다양한 옵션을 제공합니다.

문자열 연결 및 pd.to_datetime() 사용

일부 시나리오에서는 날짜 시간 열은 문자열로 저장됩니다. 이를 결합하려면 다음과 같이 간단히 공백으로 연결하면 됩니다.

df['Date'] + ' ' + df['Time']

문자열이 연결되면 pd.to_datetime()을 사용하여 DatetimeIndex 객체로 변환할 수 있습니다.

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

이 접근 방식을 사용하면 일반적으로 날짜 및 시간 형식의 조합인 연결된 문자열의 유추 형식을 활용할 수 있습니다.

format= Parameter 사용

그러나 날짜 및 시간 문자열이 표준화된 형식이 아니거나 명시적으로 지정하려는 경우 형식을 지정하려면 다음과 같이 format= 매개변수를 사용할 수 있습니다.

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

여기서 형식의 정확한 형식을 지정합니다. 문자열을 연결하여 정확한 변환을 보장합니다.

날짜를 직접 구문 분석

문자열을 연결하는 대신 pd.read_csv( )를parse_dates 매개변수로 사용합니다. 이 매개변수를 사용하면 날짜/시간 개체로 구문 분석할 열 목록을 지정할 수 있습니다.

예를 들어 데이터가 "data.csv"라는 이름의 CSV 파일에 저장된 경우:

import pandas as pd

df = pd.read_csv("data.csv", parse_dates=[['Date', 'Time']])

이 경우 Pandas는 지정된 열을 자동으로 DatetimeIndex로 구문 분석합니다.

성능 고려 사항

대규모 데이터세트로 작업할 때는 성능이 매우 중요합니다. 문자열을 연결한 다음 이를 날짜/시간으로 변환하는 것은 날짜 및 시간 정보를 직접 구문 분석하는 것보다 훨씬 더 오래 걸립니다. %timeit 매직 명령을 사용한 다음 타이밍 결과에서 볼 수 있듯이:

# Sample dataframe with 10 million rows
df = pd.concat([df for _ in range(1000000)]).reset_index(drop=True)

# Time to combine strings and convert to datetime
%timeit pd.to_datetime(df['Date'] + ' ' + df['Time'])

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

결과는 특히 대규모 데이터 세트의 경우 직접 구문 분석이 훨씬 더 빠르다는 것을 나타냅니다.

위 내용은 Pandas에서 날짜와 시간 열을 결합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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