Pandas- bin အရေအတွက်ဖြင့် groupby ကိုအသုံးပြုနည်း


ပန်ဒါရှိ အခြားသော variable ဖြင့် အုပ်စုဖွဲ့ထားသော variable ၏ boxes အရေအတွက်ကို တွက်ချက်ရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။

 #define bins
groups = df. groupby ([' group_var ', pd. cut (df. value_var , bins)])

#display bin count by group variable
groups. size (). unstack ()

အောက်ဖော်ပြပါ ဥပမာသည် ဤ syntax ကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။

ဥပမာ- Pandas ရှိ bins အရေအတွက်ဖြင့် GroupBy ကိုသုံးပါ။

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A',
                            'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'],
                   ' points ': [4, 7, 7, 11, 12, 15, 19, 19,
                             5, 5, 11, 12, 14, 14, 15, 15]})

#view DataFrame
print (df)

   team points
0 to 4
1 to 7
2 to 7
3 to 11
4 to 12
5 to 15
6 to 19
7 to 19
8 B 5
9 B 5
10 B 11
11 B 12
12 B 14
13 B 14
14 B 15
15 B 15

အဖွဲ့တစ်ခုစီအတွက် အမှတ်များ၏ အကြိမ်ရေကို တွက်ချက်ရန် အောက်ပါ syntax ကို အသုံးပြု၍ သီးခြား bins များအဖြစ် အုပ်စုဖွဲ့နိုင်သည်-

 #define groups
groups = df. groupby ([' team ', pd. cut (df. points , [0, 10, 15, 20])])

#display bin count grouped by team
groups. size (). unstack ()

points (0, 10] (10, 15] (15, 20]
  team			
     A 3 3 2
     B 2 6 0

ဤသည်မှာ ရလဒ်ကို မည်သို့အဓိပ္ပာယ်ဖွင့်ဆိုနိုင်သည်-

  • စုစုပေါင်း အသင်း A မှ ကစားသမား 3 ဦးသည် ရမှတ် 0 နှင့် 10 ကြား ရရှိခဲ့သည်။
  • စုစုပေါင်း အသင်း A မှ ကစားသမား 3 ဦးသည် ရမှတ် 10 နှင့် 15 မှတ်ကြား ရရှိခဲ့သည်။
  • စုစုပေါင်း A မှ ကစားသမား 2 ဦးသည် ရမှတ် 15 နှင့် 20 ကြား ရရှိခဲ့သည်။

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

pd.cut() လုပ်ဆောင်ချက်တွင် ကျွန်ုပ်တို့လိုချင်သော bins များကို သတ်မှတ်နိုင်သည်ကို သတိပြုပါ။

ဥပမာအားဖြင့်၊ ကျွန်ုပ်တို့သည် bins နှစ်ခုကိုသာ သတ်မှတ်နိုင်သည်-

 #define groups
groups = df. groupby ([' team ', pd. cut (df. points , [0, 10, 20])])

#display bin count grouped by team
groups. size (). unstack ()

points (0, 10] (10, 20]
  team		
     At 3 5
     B 2 6

ဤသည်မှာ ရလဒ်ကို မည်သို့အဓိပ္ပာယ်ဖွင့်ဆိုနိုင်သည်-

  • စုစုပေါင်း အသင်း A မှ ကစားသမား 3 ဦးသည် ရမှတ် 0 နှင့် 10 ကြား ရရှိခဲ့သည်။
  • စုစုပေါင်း အသင်း A မှ ကစားသမား 5 ဦးသည် ရမှတ် 10 နှင့် 20 ကြား ရရှိခဲ့သည်။
  • စုစုပေါင်း၊ အသင်း B မှ ကစားသမား 2 ဦးသည် 0 နှင့် 10 မှတ်ကြား ရမှတ်များဖြစ်သည်။
  • စုစုပေါင်း၊ Team B မှ ကစားသမား 6 ယောက်သည် ရမှတ် 10 နှင့် 20 ကြား ရရှိခဲ့သည်။

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

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

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

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

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

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

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