Pandas- crosstab() လုပ်ဆောင်ချက်တွင် aggfunc ကိုအသုံးပြုနည်း


တိကျသောမက်ထရစ်ကို အသုံးပြု၍ တန်ဖိုးများကို ပေါင်းစည်းသည့် crosstab တစ်ခုကို ဖန်တီးရန် pandas crosstab() လုပ်ဆောင်ချက်တွင် aggfunc အငြင်းအခုံကို အသုံးပြုနိုင်သည်။

 p.d. crosstab (index=df. col1 , columns=df. col2 , values=df. col3 , aggfunc=' count ')

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

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

 p.d. crosstab (index=df. col1 , columns=df. col2 , values=df. col3 , aggfunc=[' min ', ' max '])

အောက်ဖော်ပြပါနမူနာများသည် အောက်ပါပန်ဒါ DataFrame ဖြင့် ဤနည်းလမ်းတစ်ခုစီကို လက်တွေ့အသုံးပြုနည်းကို ပြသသည်-

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C '],
                   ' position ':['G', 'G', 'F', 'G', 'F', 'F', 'F', 'G', 'G', 'F', 'F'],
                   ' points ': [22, 25, 24, 39, 34, 20, 18, 17, 20, 19, 22]})

#view DataFrame
print (df)

   team position points
0 AG 22
1 AG 25
2 AF 24
3 BG 39
4 BF 34
5 BF 20
6 BF 18
7 GC 17
8 GC 20
9 CF 19
10 CF 22

ဥပမာ 1- aggfunc တွင် တန်ဖိုးတစ်ခုဖြင့် crosstab တစ်ခုကို ဖန်တီးပါ။

ရာထူးတစ်ခုစီနှင့် အဖွဲ့ပေါင်းစပ်မှုအတွက် ပျမ်းမျှတန်ဖိုးအမှတ်များကို ပြသသည့် crosstab တစ်ခုကို ဖန်တီးရန်အတွက် အောက်ပါ crosstab() လုပ်ဆောင်ချက်ကို aggfunc=’mean’ အငြင်းအခုံဖြင့် အသုံးပြုနိုင်ပါသည်။

 #create crosstab that displays mean points value by team and position
p.d. crosstab (index=df. team , columns=df. position , values=df. points , aggfunc=' mean ')

position F G
team		
A 24.0 23.5
B 24.0 39.0
C 20.5 18.5

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

  • အနေအထား F တွင်ရှိသော အသင်း A မှ ကစားသမားများ၏ ပျမ်းမျှရမှတ်မှာ 24 မှတ် ဖြစ်သည်။
  • အနေအထား G တွင်ရှိသော အသင်း A ၏ ကစားသမားများ၏ ပျမ်းမျှရမှတ်မှာ 23.5 ဖြစ်သည်။

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

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

 #create crosstab that displays max points value by team and position
p.d. crosstab (index=df. team , columns=df. position , values=df. points , aggfunc=' max ')


position F G
team		
At 24 25
B 34 39
C 22 20

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

  • အနေအထား F တွင်ရှိသော အသင်း A ၏ ကစားသမားများအတွက် အများဆုံးရမှတ်မှာ 24 မှတ် ဖြစ်သည်။
  • အနေအထား G တွင်ရှိသော အသင်း A တွင် ကစားသမားများအတွက် အများဆုံးရမှတ်မှာ 25 ဖြစ်သည်။

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

ဥပမာ 2- aggfunc တွင် တန်ဖိုးများစွာပါသော crosstab တစ်ခုကို ဖန်တီးပါ။

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

 #create crosstab that displays min and max points by team and position
p.d. crosstab (df. team , df. position , df. points , aggfunc=[' min ', ' max ']) 

	              min max
position F G F G
team				
A 24 22 24 25
B 18 39 34 39
C 19 17 22 20

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

  • အနေအထား F တွင်ရှိသော အသင်း A ၏ ကစားသမားများအတွက် အနိမ့်ဆုံး အမှတ်တန်ဖိုးသည် 24 ဖြစ်သည်။
  • ရာထူး G တွင်ရှိသော အသင်း A ကစားသမားများအတွက် အနိမ့်ဆုံးအမှတ်တန်ဖိုးသည် 22 ဖြစ်သည်။
  • ရာထူး F တွင် အသင်း A ၏ ကစားသမားများအတွက် အများဆုံး အမှတ်တန်ဖိုးသည် 24 ဖြစ်သည်။
  • ရာထူး G တွင်ရှိသော အသင်း A ကစားသမားများအတွက် အများဆုံးအမှတ်တန်ဖိုးသည် 25 ဖြစ်သည်။

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

မှတ်ချက် – pandas crosstab() လုပ်ဆောင်ချက်၏ စာရွက်စာတမ်းအပြည့်အစုံကို ဤနေရာတွင် ရှာတွေ့နိုင်ပါသည်။

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

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

Pandas- ရာခိုင်နှုန်းများဖြင့် crosstab တစ်ခုကို ဖန်တီးနည်း
Pandas- GroupBy ကိုအသုံးပြုပုံနှင့် တန်ဖိုးအရေအတွက်များ
Pandas- bin အရေအတွက်ဖြင့် GroupBy ကိုအသုံးပြုနည်း

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

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