Cara mengelompokkan berdasarkan kuartal di pandas dataframe (dengan contoh)


Anda dapat menggunakan sintaks dasar berikut untuk mengelompokkan baris per kuartal di pandas DataFrame:

 #convert date column to datetime
df[' date '] = pd. to_datetime (df[' date '])

#calculate sum of values, grouped by quarter
df. groupby (df[' date ']. dt . to_period (' Q '))[' values ']. sum ()

Rumus khusus ini mengelompokkan baris per kuartal di kolom tanggal dan menghitung jumlah kolom nilai di DataFrame.

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Cara mengelompokkan berdasarkan kuartal di Pandas

Katakanlah kita memiliki panda DataFrame berikut yang menunjukkan penjualan yang dilakukan oleh suatu perusahaan pada tanggal berbeda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' date ': pd. date_range (start='1/1/2022', freq='M', periods= 12 ),
                   ' sales ': [6, 8, 10, 5, 4, 8, 8, 3, 5, 14, 8, 3]})

#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

Terkait: Cara Membuat Rentang Tanggal di Pandas

Sintaks berikut dapat digunakan untuk menghitung jumlah penjualan yang dikelompokkan berdasarkan kuartal:

 #convert date column to datetime and subtract one week
df[' date '] = pd. to_datetime (df[' date '])

#calculate sum of sales, grouped by quarter
df. groupby (df[' date ']. dt . to_period (' Q '))[' sales ']. sum ()

date
2022Q1 24
2022Q2 17
2022Q3 16
2022Q4 25
Freq: Q-DEC, Name: sales, dtype: int64

Berikut cara menafsirkan hasilnya:

  • Sebanyak 24 penjualan dilakukan selama kuartal pertama.
  • Sebanyak 17 penjualan dilakukan selama kuartal kedua.
  • Sebanyak 16 penjualan dilakukan selama kuartal ketiga.
  • Sebanyak 25 penjualan dilakukan selama kuartal keempat.

Kita dapat menggunakan sintaks serupa untuk menghitung metrik lain, yang dikelompokkan berdasarkan kuartal.

Misalnya, kita dapat menghitung nilai penjualan maksimum, yang dikelompokkan berdasarkan kuartal:

 #convert date column to datetime
df[' date '] = pd. to_datetime (df[' date '])

#calculate max of sales, grouped by quarter
df. groupby (df[' date ']. dt . to_period (' Q '))[' sales ']. max ()

date
2022Q1 10
2022Q2 8
2022Q3 8
2022Q4 14
Freq: Q-DEC, Name: sales, dtype: int64

Berikut cara menafsirkan hasilnya:

  • Penjualan puncak dalam satu bulan selama kuartal pertama adalah 10 .
  • Penjualan puncak dalam satu bulan selama kuartal kedua adalah 8 .
  • Penjualan puncak dalam satu bulan selama kuartal ketiga adalah 8 .
  • Penjualan puncak dalam satu bulan selama kuartal keempat adalah 14 .

Catatan : Anda dapat menemukan dokumentasi lengkap operasi groupby di pandas di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di panda:

Cara mengelompokkan berdasarkan bulan di Pandas DataFrame
Cara mengelompokkan berdasarkan minggu di Pandas DataFrame
Pandas: Cara menggunakan Groupby dan menghitung secara kondisional

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *