Pandas: як отримати квартал з дати
Ви можете використовувати такі методи, щоб отримати квартал із дати в pandas DataFrame:
Спосіб 1. Отримання кварталу від дати (формат року та кварталу)
df[' quarter '] = pd. PeriodIndex ( df.date , freq=' Q ')
Якщо дата знаходиться в першому кварталі 2022 року, це поверне квартал у такому форматі, як 2022Q1 .
Спосіб 2. Отримання кварталу від дати (формат числа кварталу)
df[' quarter '] = df[' date ']. dt . quarter
Якщо дата в першому кварталі 2022 року, це просто поверне значення 1 .
Наступні приклади показують, як використовувати цей синтаксис на практиці з наступними pandas DataFrame:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' date ': pd.date_range (start=' 1/1/2022 ', freq=' M ', periods= 14 ),
' sales ': [6, 8, 10, 5, 4, 8, 8, 3, 5, 14, 8, 3, 10, 12]})
#view DataFrame
print (df)
dirty date
0 2022-01-31 6
1 2022-02-28 8
2 2022-03-31 10
3 2022-04-30 5
4 2022-05-31 4
5 2022-06-30 8
6 2022-07-31 8
7 2022-08-31 3
8 2022-09-30 5
9 2022-10-31 14
10 2022-11-30 8
11 2022-12-31 3
12 2023-01-31 10
13 2023-02-28 12
Приклад 1. Отримання кварталу від дати (формат року та кварталу)
Ми можемо використати наступний код, щоб створити новий стовпець під назвою квартал , який витягує квартал із стовпця дати у форматі року та кварталу:
#create new column that displays year and quarter from date column
df[' quarter '] = pd. PeriodIndex ( df.date , freq=' Q ')
#view updated DataFrame
print (df)
date sales quarter
0 2022-01-31 6 2022Q1
1 2022-02-28 8 2022Q1
2 2022-03-31 10 2022Q1
3 2022-04-30 5 2022Q2
4 2022-05-31 4 2022Q2
5 2022-06-30 8 2022Q2
6 2022-07-31 8 2022Q3
7 2022-08-31 3 2022Q3
8 2022-09-30 5 2022Q3
9 2022-10-31 14 2022Q4
10 2022-11-30 8 2022Q4
11 2022-12-31 3 2022Q4
12 2023-01-31 10 2023Q1
13 2023-02-28 12 2023Q1
Новий стовпець під назвою квартал містить квартал стовпця дати у форматі року та кварталу.
Приклад 2. Отримання кварталу з дати (формат числа кварталу)
Ми можемо використати наступний код, щоб створити новий стовпець під назвою квартал , який витягує квартал зі стовпця дати в числовому форматі кварталу.
#create new column that displays quarter from date column
df[' quarter '] = df[' date ']. dt . quarter
#view updated DataFrame
print (df)
date sales quarter
0 2022-01-31 6 1
1 2022-02-28 8 1
2 2022-03-31 10 1
3 2022-04-30 5 2
4 2022-05-31 4 2
5 2022-06-30 8 2
6 2022-07-31 8 3
7 2022-08-31 3 3
8 2022-09-30 5 3
9 2022-10-31 14 4
10 2022-11-30 8 4
11 2022-12-31 3 4
12 2023-01-31 10 1
13 2023-02-28 12 1
Новий стовпець під назвою квартал містить номер кварталу зі стовпця дати у форматі числа кварталу.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:
Як додавати та віднімати дні від дати в Pandas
Як вибрати рядки між двома датами в Pandas
Як створити стовпець дати з року, місяця та дня в Pandas