Вы можете использовать следующий базовый синтаксис для извлечения месяца из даты в pandas:
df['month'] = pd.datetimeIndex(df['date_column']). month
В следующем примере показано, как использовать эту функцию на практике.
Пример: извлечь месяц из даты в Pandas
Предположим, у нас есть следующие Pandas DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'sales_date': ['2020-01-18', '2020-02-20', '2020-03-21'],
'total_sales': [675, 500, 575]})
#view DataFrame
print(df)
sales_date total_sales
0 2020-01-18 675
1 2020-02-20 500
2 2020-03-21 575
Мы можем использовать следующий синтаксис для создания нового столбца, содержащего месяц столбца «дата_продажи»:
#extract month as new column
df['month'] = pd.datetimeIndex(df['sales_date']). month
#view updated DataFrame
print(df)
sales_date total_sales month
0 2020-01-18 675 1
1 2020-02-20 500 2
2 2020-03-21 575 3
Мы также можем использовать следующий синтаксис для создания нового столбца, содержащего год столбца «дата_продажи»:
#extract year as new column
df['year'] = pd.datetimeIndex(df['sales_date']). year
#view updated DataFrame
print(df)
sales_date total_sales month year
0 2020-01-18 675 1 2020
1 2020-02-20 500 2 2020
2 2020-03-21 575 3 2020
Обратите внимание, что если в DataFrame есть какие-либо значения NaN, эта функция автоматически создаст значения NaN для соответствующих значений в новых столбцах месяца и года.
Связанный: Как отсортировать кадр данных Pandas по дате
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Pandas: как подсчитать вхождения определенного значения в столбце
Pandas: получить индекс строк, столбец которых соответствует значению
Pandas: как подсчитать пропущенные значения в DataFrame