Pandas конвертировать Datetime в Date

Синтаксис функции:

df['date_column'] = pd.to_datetime(df['datetime_column']).dt.date

Пример использования:

Демо-датасет

import pandas as pd

df = pd.DataFrame({'sales': [4, 11],
                   'datetime': ['2020-01-15 20:02:58', '2020-01-18 14:43:24']})

#view DataFrame 
print(df)
sales	datetime
0	4	2020-01-15 20:02:58
1	11	2020-01-18 14:43:24

Чтобы конвертировать колонку «datetime» небходимо воспользоваться встроенным to_datetime методом:

df['date'] = pd.to_datetime(df['time']).dt.date

#view DataFrame
print(df)
	sales	date
0	4	2020-01-15
1	11	2020-01-18

Теперь колонка «date» содержит просто дату без времени

Преведение колонки к правильному формату:

Для начала следует проверить и понять какие типы данных в датафрейме


df.dtypes
sales     int64
date     object
dtype:   object

Сейчас колонка «date» является объектом.

Чтобы это исправить необходимо использовать normalize ()

df['date'] = pd.to_datetime(df['date']).dt.normalize()

#view DataFrame
print(df)

	sales	time
0	4	2020-01-15
1	11	2020-01-18

#find dtype of each column in DataFrame
df.dtypes
sales             int64
date     datetime64[ns]
dtype: object
Источник: geeksforgeeks