Pandas- အခြေအနေဖြင့် ကော်လံတစ်ခုတွင် တန်ဖိုးများကို ရေတွက်နည်း


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

နည်းလမ်း 1- အခြေအနေဖြင့် ကော်လံတစ်ခုတွင် တန်ဖိုးများကို ရေတွက်ပါ။

 len(df[df[' col1 ']==' value1 '])

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

 len(df[(df[' col1 ']==' value1 ') & (df[' col2 ']==' value2 ')])

အောက်ဖော်ပြပါနမူနာများသည် အောက်ပါ pandas 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

ဥပမာ 1- အခြေအနေဖြင့် ကော်လံတစ်ခုရှိ တန်ဖိုးများကို ရေတွက်ပါ။

အောက်ပါကုဒ်သည် တန်ဖိုး “ A” နှင့် ညီမျှသည့် အဖွဲ့ ကော်လံရှိ တန်ဖိုးအရေအတွက်ကို ရေတွက်ပုံပြသည်-

 #count number of values in team column where value is equal to 'A'
len(df[df[' team ']==' A '])

4

တန်ဖိုးသည် “A” နှင့် ညီမျှသည့် အဖွဲ့ကော်လံတွင် တန်ဖိုး 4 ခု ရှိကြောင်း ကျွန်ုပ်တို့ တွေ့နိုင်ပါသည်။

ဥပမာ 2- အခြေအနေများဖြင့် ကော်လံများစွာတွင် တန်ဖိုးများကို ရေတွက်ပါ။

အောက်ပါကုဒ်သည် အဖွဲ့ ကော်လံ “ B” နှင့် ညီမျှသည့် DataFrame ရှိ အတန်းအရေအတွက်ကို ရေတွက်ပုံနှင့် pos ကော်လံသည် “ Gu” နှင့် ညီမျှသည်-

 #count rows where team is 'B' and pos is 'Gu'
len(df[(df[' team ']==' B ') & (df[' pos ']==' Gu ')])

2

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

လိုချင်သောအခြေအနေများနှင့်ကိုက်ညီသော လိုင်းအရေအတွက်ကို ရေတွက်ရန် အလားတူ syntax ကိုသုံးနိုင်သည်။

ဥပမာအားဖြင့်၊ အောက်ပါကုဒ်သည် အခြေအနေသုံးမျိုးနှင့် ကိုက်ညီသော အတန်းအရေအတွက်ကို ရေတွက်နည်းကို ပြသသည်-

  • အဖွဲ့သည် ‘B’ နှင့် ညီသည်၊
  • pos သည် ‘Gu’ နှင့် ညီမျှသည်
  • အမှတ် သည် 12 ထက်များသည်။
 #count rows where team is 'B' and pos is 'Gu' and points > 15
len(df[(df[' team ']==' B ') & (df[' pos ']==' Gu ') & (df[' points ']> 12 )])

1

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

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

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

Pandas- စာကြောင်းနှစ်ခုကြား ခြားနားချက်ကို ဘယ်လိုရှာမလဲ။
Pandas- သတ်မှတ်ထားသောစာကြောင်းပါရှိသော လိုင်းများကို ဖျက်နည်း
Pandas- DataFrame တွင် ထပ်နေသောအတန်းများကို ဖယ်ရှားနည်း

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

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