Вы можете использовать следующий базовый синтаксис для преобразования столбца из DateTime в строку в pandas:
df['column_name']. dt.strftime('%Y-%m-%d')
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: преобразование DateTime в строку в Pandas
Предположим, у нас есть следующий кадр данных pandas, который показывает продажи в каком-то магазине за четыре разных дня:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'day ': pd.to_datetime (pd.Series(['20210101', '20210105',
'20210106', '20210109'])),
'sales': [1440, 1845, 2484, 2290]})
#view DataFrame
df
day sales
0 2021-01-01 1440
1 2021-01-05 1845
2 2021-01-06 2484
3 2021-01-09 2290
Мы можем использовать функцию dtypes для просмотра типа данных каждого столбца в DataFrame:
#view data type of each column
df.dtypes
day datetime64[ns]
sales int64
dtype: object
Мы видим, что столбец «день» имеет класс DateTime .
Чтобы преобразовать «день» в строку, мы можем использовать следующий синтаксис:
#convert 'day' column to string
df['day'] = df['day']. dt.strftime('%Y-%m-%d')
#view updated DataFrame
df
day sales
0 2021-01-01 1440
1 2021-01-05 1845
2 2021-01-06 2484
3 2021-01-09 2290
Мы можем снова использовать функцию dtypes , чтобы убедиться, что столбец «день» теперь является строкой:
#view data type of each column
df.dtypes
day object
sales int64
dtype: object
Примечание.Полную документацию по функции dt.strftime() можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные преобразования в Python:
Как преобразовать дату и время в дату в pandas
Как преобразовать столбцы в DateTime в Pandas
Как преобразовать отметку времени в дату и время в pandas