Pandas: 인덱스를 날짜/시간으로 변환하는 방법
다음 구문을 사용하여 Pandas DataFrame의 인덱스 열을 날짜/시간 형식으로 변환할 수 있습니다.
df. index = pd. to_datetime ( df.index )
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: Pandas에서 인덱스 열을 날짜/시간으로 변환
매장의 제품 판매에 대한 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정합니다.
import pandas as pd #createDataFrame df = pd. DataFrame ({' time ': ['4-15-2022 10:15', '5-19-2022 7:14', '8-01-2022 1:14', '6-14-2022 9:45', '10-24-2022 2:58', '12-13-2022 11:03'], ' product ': ['A', 'B', 'C', 'D', 'E', 'F'], ' sales ': [12, 25, 23, 18, 14, 10]}) #set 'time' column as index df = df. set_index (' time ') #view DataFrame print (df) product sales time 4-15-2022 10:15 A 12 5-19-2022 7:14 B 25 8-01-2022 1:14 C 23 6-14-2022 9:45 D 18 10-24-2022 2:58 E 14 12-13-2022 11:03 F 10
이제 인덱스 열에 시간을 포함하는 새 열을 생성하려고 한다고 가정합니다.
#attempt to create new column that contains hour of index column
df[' hour '] = df. index . hour
AttributeError: 'Index' object has no attribute 'hour'
인덱스 열이 현재 날짜/시간 형식이 아니어서 ‘시간’ 속성을 포함하지 않기 때문에 오류가 발생합니다.
이 오류를 방지하려면 pandas to_datetime() 함수를 사용하여 인덱스 열을 날짜/시간 형식으로 변환할 수 있습니다.
#convert index column to datetime format
df. index = pd. to_datetime ( df.index )
#create new column that contains hour of index column
df[' hour '] = df. index . hour
#view updated DataFrame
print (df)
product sales hour
time
2022-04-15 10:15:00 At 12 10
2022-05-19 07:14:00 B 25 7
2022-08-01 01:14:00 C 23 1
2022-06-14 09:45:00 D 18 9
2022-10-24 02:58:00 E 14 2
2022-12-13 11:03:00 F 10 11
to_datetime() 함수를 사용하면 인덱스 열을 날짜/시간 형식으로 변환할 수 있습니다.
따라서 인덱스 열에 시간을 포함하는 time 이라는 새 열을 오류 없이 성공적으로 생성할 수 있습니다.
참고 : 여기에서 pandas to_datetime() 함수에 대한 전체 문서를 찾을 수 있습니다.
추가 리소스
다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
Pandas에서 날짜 범위를 만드는 방법
Pandas에서 타임스탬프를 날짜/시간으로 변환하는 방법
팬더에서 두 날짜의 차이를 계산하는 방법