كيفية التجميع حسب الربع في pandas dataframe (مع مثال)


يمكنك استخدام بناء الجملة الأساسي التالي لتجميع الصفوف حسب الربع في 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 ()

تقوم هذه الصيغة الخاصة بتجميع الصفوف حسب الربع في عمود التاريخ وتحسب مجموع عمود القيم في DataFrame.

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: كيفية التجميع حسب الربع في الباندا

لنفترض أن لدينا DataFrame الباندا التالي الذي يوضح المبيعات التي أجرتها الشركة في تواريخ مختلفة:

 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

ذات صلة: كيفية إنشاء نطاق زمني في الباندا

يمكن استخدام الصيغة التالية لحساب مجموع المبيعات المجمعة حسب الربع:

 #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

وإليك كيفية تفسير النتيجة:

  • تم إجراء ما مجموعه 24 عملية بيع خلال الربع الأول.
  • تم إجراء ما مجموعه 17 عملية بيع خلال الربع الثاني.
  • تم إجراء ما مجموعه 16 عملية بيع خلال الربع الثالث.
  • تم إجراء ما مجموعه 25 عملية بيع خلال الربع الرابع.

يمكننا استخدام صيغة مشابهة لحساب مقياس آخر، مجمعًا حسب الربع.

على سبيل المثال، يمكننا بدلاً من ذلك حساب الحد الأقصى لقيمة المبيعات، مجمعة حسب الربع:

 #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

وإليك كيفية تفسير النتيجة:

  • بلغت ذروة المبيعات في شهر واحد خلال الربع الأول 10 .
  • بلغت ذروة المبيعات في شهر واحد خلال الربع الثاني 8 .
  • بلغت ذروة المبيعات في شهر واحد خلال الربع الثالث 8 .
  • بلغت ذروة المبيعات في شهر واحد خلال الربع الرابع 14 .

ملاحظة : يمكنك العثور على الوثائق الكاملة لعملية التجميع في الباندا هنا .

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ العمليات الشائعة الأخرى في الباندا:

كيفية التجميع حسب الشهر في Pandas DataFrame
كيفية التجميع حسب الأسبوع في Pandas DataFrame
الباندا: كيفية استخدام Groupby والعد المشروط

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *