Boolean ကော်လံများကို အသုံးပြု၍ pandas dataframe ကို စစ်ထုတ်နည်း
Boolean ကော်လံတန်ဖိုးများကို အခြေခံ၍ pandas DataFrame အတွင်းရှိ အတန်းများကို စစ်ထုတ်ရန် အောက်ပါနည်းလမ်းများကို အသုံးပြုနိုင်ပါသည်။
နည်းလမ်း 1- Boolean ကော်လံကို အခြေခံ၍ DataFrame ကို စစ်ထုတ်ပါ။
#filter for rows where value in 'my_column' is True df. loc [df. my_column ]
နည်းလမ်း 2- Boolean ကော်လံများစွာကို အခြေခံ၍ DataFrame ကို စစ်ထုတ်ပါ။
#filter for rows where value in 'column1' or 'column2' is True df. loc [df. column1 | df. column2 ]
အောက်ဖော်ပြပါနမူနာများသည် အောက်ပါ pandas DataFrame ဖြင့် လက်တွေ့တွင် နည်းလမ်းတစ်ခုစီကို အသုံးပြုနည်းကို ပြသသည်-
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G'], ' points ': [18,20, 25, 40, 34, 32, 19], ' all_star ': [True, False, True, True, True, False, False], ' starter ': [False, True, True, True, False, False, False]}) #view DataFrame print (df) team points all_star starter 0 A 18 True False 1 B 20 False True 2 C 25 True True 3 D 40 True True 4 E 34 True False 5 F 32 False False 6 G 19 False False
ဥပမာ 1- Boolean ကော်လံကို အခြေခံ၍ DataFrame ကို စစ်ထုတ်ပါ။
ကျွန်ုပ်တို့သည် all_star ကော်လံရှိ တန်ဖိုးမှန်သည့် အတန်းများသာ ပါဝင်ရန် pandas DataFrame ကို စစ်ထုတ်ရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။
#filter for rows where 'all_star' is True df. loc [df. all_star ] team points all_star starter 0 A 18 True False 2 C 25 True True 3 D 40 True True 4 E 34 True False
DataFrame တွင် all_star ကော်လံရှိ တန်ဖိုးသည် မှန်သော အတန်းများသာ ပါဝင်ရန် စစ်ထုတ်ထားကြောင်း သတိပြုပါ။
all_star သည် False နေရာတွင် အတန်းများကို စစ်ထုတ်လိုပါက၊ ကော်လံအမည်၏ ရှေ့တွင် tilde ( ~ ) ကို ရိုက်ထည့်ပါ-
#filter for rows where 'all_star' is False df. loc [ ~ df. all_star ] team points all_star starter 1 B 20 False True 5 F 32 False False 6 G 19 False False
DataFrame တွင် all_star ကော်လံရှိ တန်ဖိုးသည် False အတန်းများသာပါဝင်ရန် ယခုစစ်ထုတ်ထားပါသည်။
ဥပမာ 2- Boolean ကော်လံများစွာကို အခြေခံ၍ DataFrame ကို စစ်ထုတ်ပါ။
all_star ကော်လံ၏တန်ဖိုး သို့မဟုတ် စတင် ကော်လံသည် မှန်သည့် အတန်းများသာပါဝင်ရန် pandas DataFrame ကို စစ်ထုတ်ရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။
#filter for rows where 'all_star' or 'starter' is True df. loc [df. all_star | df. starter ] team points all_star starter 0 A 18 True False 1 B 20 False True 2 C 25 True True 3 D 40 True True 4 E 34 True False
DataFrame တွင် all_star သို့မဟုတ် starter ကော်လံရှိ တန်ဖိုးသည် True အတန်းများသာ ပါဝင်ရန် စီစစ်ထားသည်ကို သတိပြုပါ။
all_star နှင့် starter ကော်လံများတွင် တန်ဖိုးရှိသော အတန်းများကို စစ်ထုတ်လိုပါက၊ သင်သည် | အစား & operator ကိုသုံးနိုင်သည် ။ အော်ပရေတာ-
#filter for rows where 'all_star' and 'starter' is True df. loc [df. all_star & df. starter ] team points all_star starter 2 C 25 True True 3 D 40 True True
ယခုအခါတွင် all_star နှင့် starter ကော်လံများတွင် တန်ဖိုးသည် မှန်သည့် အတန်းများသာ ပါဝင်ရန် DataFrame ကို စစ်ထုတ်ထားပါသည်။
ဆက်စပ်- Pandas ရှိ loc နှင့် iloc အကြား ကွာခြားချက်
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် ပန်ဒါများတွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
Pandas- boolean စီးရီးကို အသုံးပြု၍ DataFrame မှအတန်းများကို ရွေးပါ။
Pandas- အခြေအနေအပေါ်အခြေခံ၍ boolean ကော်လံကို ဖန်တီးနည်း
Pandas- boolean တန်ဖိုးများကို ကိန်းပြည့်တန်ဖိုးများသို့ မည်သို့ပြောင်းလဲမည်နည်း။