Как преобразовать DateTime в строку в Pandas (с примерами)


Вы можете использовать следующий базовый синтаксис для преобразования столбца из 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

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.