Pandas- groupby ကိုအသုံးပြုနည်းနှင့် အခြေအနေအရ ရေတွက်နည်း
အဖွဲ့လိုက်လုပ်ဆောင်ရန်နှင့် pandas DataFrame တွင် အခြေအနေအလိုက် ရေတွက်ရန် အောက်ပါအခြေခံ syntax ကို သင်အသုံးပြုနိုင်သည်-
df. groupby (' var1 ')[' var2 ']. apply ( lambda x:(x==' val '). sum ()). reset_index (name=' count ')
ဤ သီးခြား syntax သည် var1 ကိုအခြေခံ၍ DataFrame ၏အတန်းများကိုစုဖွဲ့ပြီး var2 “ val” နှင့် ညီမျှသည့် အတန်းအရေအတွက်ကို ရေတွက်သည်။
အောက်ဖော်ပြပါ ဥပမာသည် ဤ syntax ကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။
ဥပမာ- Pandas တွင် Groupby နှင့် Condition with Count
အမျိုးမျိုးသော ဘတ်စကတ်ဘောကစားသမားများအကြောင်း အချက်အလက်ပါရှိသော အောက်ပါပန်ဒါ DataFrame ရှိသည်ဆိုပါစို့။
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' pos ': ['Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28]}) #view DataFrame print (df) team pos points 0 A Gu 18 1 A Fo 22 2 A Fo 19 3 A Fo 14 4 B Gu 14 5 B Gu 11 6 B Fo 20 7 B Fo 28
အောက်ပါကုဒ်သည် DataFrame ကို team variable ဖြင့် အုပ်စုဖွဲ့နည်းနှင့် pos variable “ Gu” နှင့် ညီမျှသည့် အတန်းအရေအတွက်ကို ရေတွက်ပြသည်-
#groupby team and count number of 'pos' equal to 'Gu' df_count = df. groupby (' team ')[' pos ']. apply ( lambda x: (x==' Gu '). sum ()). reset_index (name=' count ') #view results print (df_count) team count 0 to 1 1 B 2
ရလဒ်မှ ကျွန်ုပ်တို့ မြင်နိုင်သည်-
- အဖွဲ့ A တွင် pos ကော်လံသည် “Gu” နှင့် ညီမျှသည့် အတန်း 1 တန်း ရှိသည်
- Team B တွင် pos ကော်လံသည် “Gu” နှင့် ညီမျှသော အတန်း 2 တန်း ရှိသည်
အဖွဲ့လိုက်လုပ်ဆောင်ရန်နှင့် ကိန်းဂဏာန်းအခြေအနေဖြင့် ရေတွက်ရန် အလားတူ syntax ကို အသုံးပြုနိုင်ပါသည်။
ဥပမာအားဖြင့်၊ အောက်ပါကုဒ်သည် အသင်း ပြောင်းကိန်းအလိုက် အုပ်စုဖွဲ့နည်းကိုပြသပြီး အမှတ် ကွဲလွဲနိုင်သည့်အမှတ် 15 ထက်ကြီးသော အတန်းအရေအတွက်ကို ရေတွက်ပြသည်-
#groupby team and count number of 'points' greater than 15 df_count = df. groupby (' team ')[' points ']. apply ( lambda x: (x>15). sum ()). reset_index (name=' count ') #view results print (df_count) team count 0 to 3 1 B 2
ရလဒ်မှ ကျွန်ုပ်တို့ မြင်နိုင်သည်-
- အဖွဲ့ A တွင် ရမှတ် ကော်လံ 15 ထက် ကြီးသော 3 လိုင်းရှိသည်။
- အဖွဲ့ B တွင် ရမှတ် ကော်လံ 15 ထက် ကြီးသော လိုင်း 2 ခု ရှိသည်။
အဖွဲ့လိုက်လုပ်ဆောင်ရန်နှင့် သင်အလိုရှိသော သီးခြားအခြေအနေတစ်ခုဖြင့် ရေတွက်ရန် အလားတူ syntax ကို အသုံးပြုနိုင်သည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် ပန်ဒါများတွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
Pandas GroupBy ကို အသုံးပြု၍ ထူးခြားသောတန်ဖိုးများကို ရေတွက်နည်း
Pandas Groupby တွင် လုပ်ဆောင်ချက်တစ်ခုကို မည်သို့အသုံးပြုရမည်နည်း။
Pandas GroupBy မှ Bar Plot တစ်ခုဖန်တီးနည်း