데이터 프레임에 datetime 열이 있고 날짜와 시간을 구분하는 결과가 다음과 같다고 가정합니다.
<미리> 날짜시간 날짜 시간0 2020-01-01 07:00:00 2020-01-06 07:00:001 2020-01-02 07:00:00 2020-01-06 07:00:002 2020-02 03 07:00:00 2020-01-06 07:00:003 2020-01-04 07:00:00 2020-01-06 07:00:004 2020-01-020-07:00:00 10 06 07:00:005 2020-01-06 07:00:00 2020-01-06 07:00:00이 문제를 해결하기 위해 다음 접근 방식을 따릅니다 -
해결책 1
-
pd.date_range()를 사용하여 데이터 프레임 'datetime' 열을 정의합니다. 아래에 정의되어 있습니다.
pd.DataFrame({'datetime':pd.date_range('2020-01-01 07:00',periods=6)})
-
for 루프 d 변수를 설정하여 df['datetime'] 열에 하나씩 액세스합니다.
-
for 루프에서 날짜와 시간을 변환하고 df['date'] 및 df['time']으로 저장합니다. 아래에 정의되어 있습니다.
df['datetime']의 d:df['date'] =d.date() df['time'] =d.time()
예시
더 나은 이해를 위해 다음 코드를 확인합시다 -
판다를 pddf =pd.DataFrame({'datetime':pd.date_range('2020-01-01 07:00',periods=6)})print("DataFrame is:\n", df)로 가져오기 df['datetime']의 d:df['date'] =d.date() df['time'] =d.time()print(df)
출력
DataFrame은 다음과 같습니다. datetime0 2020-01-01 07:10:001 2020-01-02 07:10:002 2020-01-03 07:10:003 2020-01-04 07:10:004 10 -05 07:10:05 2020-01-06 07:10:00날짜-시간-시-분 :날짜/시간 날짜 시간0 2020-01-01 07:10:00 2020-01-06 07:10:001 2020-01 -02 07:10:00 2020-01-06 07:10:002 2020-01-03 07:10:00 2020-01-06 07:10:003 2020-01-020-07:10:00 10 -06 07:10:004 2020-01-05 07:10:00 2020-01-06 07:10:005 2020-01-06 07:10:00 2020-01-06 07:10:00
해결책 2
-
데이터 프레임 정의
-
df['datetime'] 내부에 pd.to_datetime() 함수를 적용하고 dt.date를 사용하여 날짜를 선택한 다음 df['date']
로 저장합니다. -
df['datetime'] 내부에 pd.to_datetime() 함수를 적용하고 dt.time을 사용하여 시간을 선택한 다음 df['time']
로 저장합니다.
예시
더 나은 이해를 위해 다음 코드를 확인합시다 -
판다를 pddf로 가져오기 =pd.DataFrame({'datetime':pd.date_range('2020-01-01 07:10',periods=6)})print("DataFrame is:\n", df) df['날짜'] =pd.to_datetime(df['날짜시간']).dt.datedf['시간'] =pd.to_datetime(df['날짜시간']).dt.timeprint("날짜-시간-시간 -분 :\n", df)
출력
DataFrame은 다음과 같습니다. datetime0 2020-01-01 07:10:001 2020-01-02 07:10:002 2020-01-03 07:10:003 2020-01-04 07:10:004 10 -05 07:10:05 2020-01-06 07:10:00날짜-시간-시-분 :날짜/시간 날짜 시간0 2020-01-01 07:10:00 2020-01-06 07:10:001 2020-01 -02 07:10:00 2020-01-06 07:10:002 2020-01-03 07:10:00 2020-01-06 07:10:003 2020-01-020-07:10:00 10 -06 07:10:004 2020-01-05 07:10:00 2020-01-06 07:10:005 2020-01-06 07:10:00 2020-01-06 07:10:00