Pandas- အတန်းကို အမြင့်ဆုံးတန်ဖိုးဖြင့် ထိန်းသိမ်းထားစဉ် ထပ်တူများကို ဖယ်ရှားနည်း


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

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

 df. sort_values (' var2 ', ascending= False ). drop_duplicates (' var1 '). sort_index ()

နည်းလမ်း 2- ကော်လံအများအပြားရှိ မိတ္တူများကို ဖယ်ရှားပြီး Max ဖြင့် အတန်းထားပါ။

 df. sort_values (' var3 ', ascending= False ). drop_duplicates ([' var1 ', ' var2 ']). sort_index ()

အောက်ဖော်ပြပါ ဥပမာများသည် နည်းလမ်းတစ်ခုစီကို လက်တွေ့အသုံးချနည်းကို ပြသထားသည်။

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

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
                   ' points ': [20, 24, 28, 30, 14, 19, 29, 40, 22]})

#view DataFrame
print (df)

  team points
0 to 20
1 to 24
2 to 28
3 B 30
4 B 14
5 B 19
6 C 29
7 C 40
8 C 22

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

 #drop duplicate teams but keeps row with max points
df_new = df. sort_values (' points ', ascending= False ). drop_duplicates (' team '). sort_index ()

#view DataFrame
print (df_new)

  team points
2 to 28
3 B 30
7 C 40

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

ဥပမာ 2- ကော်လံအများအပြားရှိ ထပ်တူများကို ဖယ်ရှားပြီး Max ဖြင့် အတန်းထားပါ။

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
                   ' position ': ['G', 'G', 'F', 'G', 'F', 'F', 'G', 'G', 'F'],
                   ' points ': [20, 24, 28, 30, 14, 19, 29, 40, 22]})

#view DataFrame
print (df)

  team position points
0 AG 20
1 GA 24
2AF 28
3 BG 30
4 BF 14
5 BF 19
6 GC 29
7 GC 40
8 CF 22

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

 #drop rows with duplicate team and positions but keeps row with max points
df_new = df. sort_values (' points ', ascending= False ). drop_duplicates ([' team ',' position ']). sort_index ()

#view DataFrame
print (df_new)

  team position points
1 GA 24
2AF 28
3 BG 30
5 BF 19
7 GC 40
8 CF 22

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

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

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

Pandas တွင် ထပ်နေသောအတန်းများကို ဖယ်ရှားနည်း
Pandas ရှိ ထပ်နေသောကော်လံများကို ဖယ်ရှားနည်း
ပန်ဒါများတွင် ထပ်နေသောများကို ရေတွက်နည်း

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

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