Pandas- dataframes အတန်းနှစ်ခုကို အတန်းအလိုက် နှိုင်းယှဉ်နည်း


ပန်ဒါ DataFrames အတန်းနှစ်ခုကို အတန်းလိုက် နှိုင်းယှဉ်ရန် အောက်ပါနည်းလမ်းများကို သင်အသုံးပြုနိုင်ပါသည်။

နည်းလမ်း 1- ဒေတာဘောင်များကို နှိုင်းယှဉ်ပြီး ကွဲပြားမှုများဖြင့် အတန်းများကိုသာ ထားရှိပါ။

 df_diff = df1. compare (df2, keep_equal= True , align_axis= 0 )

နည်းလမ်း 2- ဒေတာဘောင်များကို နှိုင်းယှဉ်ပြီး အတန်းအားလုံးကို သိမ်းဆည်းပါ။

 df_diff = df1. compare (df2, keep_equal= True , keep_shape= True , align_axis= 0 )

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

 import pandas as pd

#create first DataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D'],
                    ' points ': [18, 22, 19, 14],
                    ' assists ': [5, 7, 7, 9]})

print (df1)

  team points assists
0 to 18 5
1 B 22 7
2 C 19 7
3 D 14 9

#create second DataFrame
df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'E'],
                    ' points ': [18, 30, 19, 20],
                    ' assists ': [5, 7, 7, 9]})

print (df2)

  team points assists
0 to 18 5
1 B 30 7
2 C 19 7
3 E 20 9

ဥပမာ 1- DataFrames များကို နှိုင်းယှဉ်ပြီး မတူညီသောအတန်းများကိုသာ ထားရှိပါ။

အောက်ပါကုဒ်သည် DataFrames အတန်းနှစ်ခုကို အတန်းအလိုက် နှိုင်းယှဉ်ပြီး အနည်းဆုံး ကော်လံတစ်ခုတွင် ကွဲပြားသည့်အတန်းများကိုသာ ထားရှိပုံပြသသည်-

 #compare DataFrames and only keep rows with differences
df_diff = df1. compare (df2, keep_equal= True , align_axis= 0 )

#view results
print (df_diff)

        team points
1 coil B 22
  other B 30
3 choke D 14
  other E 20

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

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

self line ရှိ တန်ဖိုးများသည် ပထမ DataFrame ၏ တန်ဖိုးများကို ပြသနေချိန်တွင် အခြားသော စာကြောင်းရှိ တန်ဖိုးများသည် ဒုတိယ DataFrame ၏ တန်ဖိုးများကို ပြသပါသည်။

ဥပမာအားဖြင့်၊ ကျွန်ုပ်တို့ မြင်နိုင်သည်-

  • ပထမ DataFrame ၏ အညွှန်းအနေအထား 1 ရှိ အတန်းတွင် အဖွဲ့ကော်လံတွင် B နှင့် အမှတ်ကော်လံတွင် 22 ခု ပါရှိသည်။
  • ဒုတိယ DataFrame ၏ အညွှန်းနေရာ 1 ရှိ အတန်းတွင် အဖွဲ့ကော်လံတွင် B နှင့် အမှတ်ကော်လံတွင် 30 ပါရှိသည်။

မှတ်ချက်keep_equal=True argument သည် တန်ဖိုးများကို တန်းတူထားရန် ပန်ဒါများကို ပြောထားသည်။ မဟုတ်ပါက တန်းတူတန်ဖိုးများကို NaN အဖြစ် ပြသသည်။

ဥပမာ 2- ဒေတာဘောင်များကို နှိုင်းယှဉ်ပြီး အတန်းအားလုံးကို သိမ်းဆည်းပါ။

အောက်ပါကုဒ်သည် ဒေတာဘောင်နှစ်ခုကို အတန်းအလိုက် နှိုင်းယှဉ်ရန်နှင့် မူလဒေတာဘောင်များမှ အတန်းအားလုံးကို သိမ်းဆည်းရန် Keep_shape=True argument ကို အသုံးပြုနည်းကို ပြသသည်-

 #compare DataFrames and keep all rows
df_diff = df1. compare (df2, keep_equal= True , keep_shape= True , align_axis= 0 )

#view results
print (df_diff)

        team points assists
0 choke A 18 5
  other A 18 5
1 coil B 22 7
  other B 30 7
2 choke C 19 7
  other C 19 7
3 choke D 14 9
  other E 20 9

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

မှတ်ချက် #1 : comparison() လုပ်ဆောင်ချက်သည် DataFrames နှစ်ခုတွင် တူညီသောအတိုင်းအတာရှိသည်ဟု ယူဆသည်။

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

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

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

Pandas- ကော်လံနှစ်ခုကို နှိုင်းယှဉ်နည်း
Pandas- ကော်လံသုံးခုကို နှိုင်းယှဉ်နည်း
Pandas- မတူညီသော DataFrames နှစ်ခုရှိ ကော်လံများကို နှိုင်းယှဉ်နည်း

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

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