Pandas- တန်ဖိုးများကို အပိုင်းအခြားအလိုက် အုပ်စုဖွဲ့နည်း
ပေါင်းစည်းခြင်းမလုပ်ဆောင်မီ ကော်လံတစ်ခုအား တန်ဖိုးများအကွာအဝေးအလိုက် အုပ်စုဖွဲ့ရန်အတွက် ပန်ဒါရှိ groupby() လုပ်ဆောင်ချက်ကို အသုံးပြုရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။
df. groupby (pd. cut (df[' my_column '], [0, 25, 50, 75, 100])). sum ()
ဤဥပမာသည် my_column ဟုခေါ်သော ကော်လံရှိ အောက်ပါတန်ဖိုးများ၏ အကွာအဝေးအရ DataFrame ၏အတန်းများကို အုပ်စုဖွဲ့လိမ့်မည်-
- (၀.၂၅]
- (၂၅၊ ၅၀]၊
- (၅၀၊ ၇၅)၊
- (၇၅၊ ၁၀၀]၊
ထို့နောက် ၎င်းသည် ဤတန်ဖိုးများကို အုပ်စုများအဖြစ် အသုံးပြုကာ DataFrame ကော်လံအားလုံးရှိ တန်ဖိုးများ၏ ပေါင်းလဒ်ကို တွက်ချက်မည်ဖြစ်သည်။
အောက်ဖော်ပြပါ ဥပမာသည် ဤ syntax ကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။
ဥပမာ- Pandas ရှိ တန်ဖိုးများအလိုက် အုပ်စုဖွဲ့နည်း
မတူညီသော လက်လီစတိုးဆိုင်များ၏ အရွယ်အစားနှင့် ၎င်းတို့၏ စုစုပေါင်းရောင်းချမှုဆိုင်ရာ အချက်အလက်များပါရှိသော အောက်ပါပန်ဒါ DataFrame ရှိသည်ဟု ယူဆကြပါစို့။
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' store_size ': [14, 25, 26, 29, 45, 58, 67, 81, 90, 98],
' sales ': [15, 18, 24, 25, 20, 35, 34, 49, 44, 49]})
#view DataFrame
print (df)
store_size sales
0 14 15
1 25 18
2 26 24
3 29 25
4 45 20
5 58 35
6 67 34
7 81 49
8 90 44
9 98 49
store_size ကော်လံ၏ သတ်မှတ်ထားသော အကွာအဝေးအပေါ် အခြေခံ၍ DataFrame ကို အုပ်စုဖွဲ့ရန် အောက်ပါ syntax ကို သုံးနိုင်ပြီး အပိုင်းအခြားများကို အုပ်စုများအဖြစ် အသုံးပြုကာ DataFrame ရှိ အခြားကော်လံအားလုံး၏ ပေါင်းလဒ်ကို တွက်ချက်နိုင်သည်-
#group by ranges of store_size and calculate sum of all columns
df. groupby (pd. cut (df[' store_size '], [0, 25, 50, 75, 100])). sum ()
store_size sales
store_size
(0.25] 39 33
(25, 50] 100 69
(50, 75] 125 69
(75, 100] 269 142
ရလဒ်မှ ကျွန်ုပ်တို့ မြင်နိုင်သည်-
- 0 နှင့် 25 ကြားတွင် store_size တန်ဖိုးရှိသော အတန်းများအတွက်၊ store_size ၏ပေါင်းလဒ်သည် 39 ဖြစ်ပြီး အရောင်း၏ပေါင်းလဒ်မှာ 33 ဖြစ်သည်။
- store_size တန်ဖိုး 25 နှင့် 50 ကြားရှိ အတန်းများအတွက်၊ store_size ၏ sum သည် 100 ဖြစ်ပြီး အရောင်း၏ sum သည် 69 ဖြစ်သည်။
နောက် … ပြီးတော့။
သင်အလိုရှိပါက၊ store_size အပိုင်းအခြားတစ်ခုစီအတွက် အရောင်း ၏ပေါင်းလဒ်ကိုလည်း တွက်ချက်နိုင်သည်။
#group by ranges of store_size and calculate sum of sales
df. groupby (pd. cut (df[' store_size '], [0, 25, 50, 75, 100]))[' sales ']. sum ()
store_size
(0.25] 33
(25, 50] 69
(50, 75] 69
(75, 100] 142
Name: sales, dtype: int64
ဖြတ်မှတ်တစ်ခုစီကို ကိုယ်တိုင်မသတ်မှတ်ဘဲ ကိန်းရှင်တစ်ခုကို အပိုင်းအခြားများအဖြစ် ခွဲရန် NumPy arange() လုပ်ဆောင်ချက်ကိုလည်း သင်အသုံးပြုနိုင်သည်-
import numpy as np #group by ranges of store_size and calculate sum of sales df. groupby (pd. cut (df[' store_size '], np. arange (0, 101, 25)))[' sales ']. sum () store_size (0.25] 33 (25, 50] 69 (50, 75] 69 (75, 100] 142 Name: sales, dtype: int64
ဤရလဒ်များသည် ယခင်နမူနာနှင့် ကိုက်ညီကြောင်း သတိပြုပါ။
မှတ်ချက် – NumPy arange() လုပ်ဆောင်ချက်အတွက် စာရွက်စာတမ်းအပြည့်အစုံကို ဤနေရာတွင် ရှာဖွေနိုင်ပါသည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် ပန်ဒါများတွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
Pandas- အုပ်စုလိုက်အသုံးပြု၍ ထူးခြားသောတန်ဖိုးများကို ရေတွက်နည်း
Pandas- အုပ်စုလိုက်ဖြင့် ကော်လံတစ်ခု၏ ပျမ်းမျှနှင့် စံနှုန်းကို တွက်ချက်နည်း
Pandas- အုပ်စုအလိုက် as_index သုံးနည်း