ပန်ဒါများ- groupby() ဖြင့် အချိန်စီးရီးများကို နမူနာယူနည်း


အချိန်စီးရီးဒေတာကို ပြန်လည်နမူနာယူခြင်း ဆိုသည်မှာ ကာလအသစ်တစ်ခုအတွင်း ဒေတာကို ပေါင်းစည်းခြင်းဖြစ်သည်။

groupby အော်ပရေတာကို အသုံးပြု၍ ပန်ဒါရှိ အချိန်စီးရီးတစ်ခုကို ပြန်လည်နမူနာယူလိုပါက အောက်ပါအခြေခံ syntax ကို အသုံးပြုနိုင်ပါသည်။

 group = df. groupby ([pd. Group (freq=' W '), ' store '])

result = group[' sales ']. sum (). unstack (' store '). fillna (0) 

ဤဥပမာသည် DataFrame ၏အတန်းများကို စတိုး ကော်လံအလိုက် အုပ်စုဖွဲ့ကာ၊ ထို့နောက် အချိန်စီးရီးကို ရက်သတ္တပတ်အလိုက် ပြန်လည်နမူနာပြုလုပ်သည် ( freq=’W’ )၊ ထို့နောက် အရောင်း ကော်လံရှိ တန်ဖိုးများကို ပေါင်းလဒ်တွက်ချက်သည်။

အချိန်စီးရီးဒေတာကို မတူညီသောအချိန်ကာလများအပါအဝင်၊

  • S : စက္ကန့်
  • မိနစ် : မိနစ်
  • H : နာရီ
  • J : နေ့
  • W : ရက်သတ္တပတ်
  • M : လ
  • Q : ရပ်ကွက်
  • A : နှစ်

အောက်ဖော်ပြပါ ဥပမာသည် လက်တွေ့တွင် အုပ်စုလိုက် လုပ်ဆောင်မှုတစ်ခုဖြင့် အချိန်စီးရီးဒေတာကို နမူနာယူနည်းကို ပြသထားသည်။

ဥပမာ- Pandas တွင် အုပ်စုလိုက်ဖြင့် အချိန်စီးရီးတစ်ခုကို နမူနာယူပါ။

ကျွန်ုပ်တို့တွင် မတူညီသောစတိုးဆိုင်နှစ်ခုတွင် နေ့စဥ်ရောင်းချမှုစုစုပေါင်းကိုပြသသည့် အောက်ပါပန်ဒါ DataFrame ရှိသည်ဆိုပါစို့။

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' sales ': [13, 14, 17, 17, 16, 22, 28, 10, 17, 10, 11],
                   ' store ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'B']} ,
                   index=pd. date_range ('2023-01-06', '2023-01-16', freq='d'))

#view DataFrame
print (df)

            sales store
2023-01-06 13 A
2023-01-07 14 A
2023-01-08 17 A
2023-01-09 17 A
2023-01-10 16A
2023-01-11 22 B
2023-01-12 28 B
2023-01-13 10 B
2023-01-14 17 B
2023-01-15 10 B
2023-01-16 11 B

စတိုးဆိုင် အလိုက် အတန်းများကို အုပ်စုဖွဲ့လိုသည်ဆိုပါစို့၊ ထို့နောက် အချိန်စီးရီးကို အပတ်စဉ်နမူနာယူပြီး အရောင်း ကော်လံရှိ တန်ဖိုးများကို ပေါင်းကာ တွက်ကြည့်ကြပါစို့။

ဒါကိုလုပ်ဖို့ အောက်ပါ syntax ကို သုံးနိုင်ပါတယ်။

 #group by store and resample time series by week
group = df. groupby ([pd. Group (freq=' W '), ' store '])

#calculate sum of sales each week by store
result = group[' sales ']. sum (). unstack (' store '). fillna (0)

#view results
print (result)

store AB
2023-01-08 14.0 0.0
2023-01-15 16.5 17.0
2023-01-22 0.0 11.0

ရလဒ်မှ ကျွန်ုပ်တို့ မြင်နိုင်သည်-

  • စတိုးဆိုင် A တွင် 01/08/2023 တွင် ကုန်ဆုံးသည့် 01/08/2023 အပတ်အတွက် ရောင်းရငွေပေါင်းသည် 14 ဖြစ်သည်။
  • စတိုး B တွင် 01/08/2023 တွင် ကုန်ဆုံးသည့် ရက်သတ္တပတ်အတွက် ရောင်းရငွေပေါင်းသည် 0 ဖြစ်သည်။

နောက် … ပြီးတော့။

ဤဥပမာတွင် ကျွန်ုပ်တို့သည် အရောင်း ကော်လံရှိ တန်ဖိုးများပေါင်းလဒ်ကို တွက်ချက်ရန် ရွေးချယ်ထားကြောင်း သတိပြုပါ။

သို့သော်၊ ကျွန်ုပ်တို့သည် ရေတွက်ခြင်း၊ ပျမ်းမျှ၊ ပျမ်းမျှ၊ အနည်းဆုံး၊ အများဆုံး စသည်တို့ကို ရွေးချယ်နိုင်ပါသည်။

အပေါ်ကကုဒ်မှာ sum() Mean()Median() အစရှိသဖြင့် အစားထိုးလိုက်ပါ။ သင်နှစ်သက်ရာမက်ထရစ်ကို တွက်ချက်ရန်။

ထပ်လောင်းအရင်းအမြစ်များ

အောက်ပါ သင်ခန်းစာများသည် Python တွင် အခြားသော ဘုံလုပ်ဆောင်ချက်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-

Matplotlib တွင် အချိန်စီးရီးတစ်ခုကို ဘယ်လိုဆွဲမလဲ။
Seaborn မှာ အချိန်စီးရီးတစ်ခု ဘယ်လိုဆွဲမလဲ။
Python ရှိ time series မှ MAPE ကို တွက်နည်း

မှတ်ချက်တစ်ခုထည့်ပါ။

သင့် email လိပ်စာကို ဖော်ပြမည် မဟုတ်ပါ။ လိုအပ်သော ကွက်လပ်များကို * ဖြင့်မှတ်သားထားသည်