R တွင် error ကို ပြင်ဆင်နည်း- အမည်များသည် ယခင်အမည်များနှင့် မကိုက်ညီပါ။


R တွင် သင်ကြုံတွေ့ရလေ့ရှိသော အမှားတစ်ခုမှာ-

 Error in match.names(clabs, names(xi)): 
  names do not match previous names

ဒေတာဘောင်နှစ်ခုကို ချိတ်ဆက်ရန် rbind() လုပ်ဆောင်ချက်ကို သင်အသုံးပြုသောအခါတွင် ဤအမှားသည် ဖြစ်ပေါ်လာသော်လည်း ဒေတာဘောင်နှစ်ခု၏ ကော်လံအမည်များသည် မကိုက်ညီပါ။

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

ဥပမာ- “ အမည်များသည် ယခင်အမည်များနှင့် မကိုက်ညီပါ” ကို ဘယ်လိုပြင်ဆင်ရမလဲ။

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

 #create and view first data frame
df1 <- data. frame (var1=c(1, 3, 3, 4, 5),
                  var2=c(7, 7, 8, 3, 2))

df1

  var1 var2
1 1 7
2 3 7
3 3 8
4 4 3
5 5 2

#create and view first second frame 
df2 <- data. frame (var3=c(3, 3, 6, 6, 8),
                  var4=c(1, 1, 2, 8, 9))

df2

  var3 var4
1 3 1
2 3 1
3 6 2
4 6 8
5 8 9

ဤဒေတာဘောင်နှစ်ခုကို ချည်နှောင်ရန် rbind() လုပ်ဆောင်ချက်ကို အသုံးပြုရန် ကြိုးစားပါက၊ ကျွန်ုပ်တို့သည် အမှားအယွင်းတစ်ခု ရရှိမည်ဖြစ်သည်။

 #attempt to row bind the two data frames
rbind(df1, df2)

Error in match.names(clabs, names(xi)): 
  names do not match previous names

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

ပထမဒေတာဘောင်တွင် အောက်ပါကော်လံအမည်များ ပါရှိသည်။

  • var1
  • var2

ဒုတိယဒေတာဘောင်တွင် အောက်ပါကော်လံအမည်များပါရှိသည်။

  • var3
  • var4

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

 #check if column names are identical between two data frames
identical(names(df1), names(df2))

[1] FALSE

ကော်လံအမည်များ မတူကြောင်း ကျွန်ုပ်တို့ မြင်နိုင်သည်။

ဤအမှားကိုပြင်ရန်၊ ပထမဒေတာဘောင်ရှိ ကော်လံအမည်များနှင့် တိုက်ဆိုင်ရန် ဒုတိယဒေတာဘောင်ရှိ ကော်လံအမည်များကို ကိုယ်တိုင်အမည်ပြောင်းနိုင်သည်-

 #define two data frames
df1 <- data. frame (var1=c(1, 3, 3, 4, 5),
                  var2=c(7, 7, 8, 3, 2))

df2 <- data. frame (var3=c(3, 3, 6, 6, 8),
                  var4=c(1, 1, 2, 8, 9))

#rename second data frame columns
names(df2) <- c(' var1 ', ' var2 ')

#row bind the two data frames
rbind(df1, df2)

   var1 var2
1 1 7
2 3 7
3 3 8
4 4 3
5 5 2
6 3 1
7 3 1
8 6 2
9 6 8
10 8 9

ကော်လံအမည်များ ကိုက်ညီသောကြောင့် rbind() သည် ဒေတာဘောင်နှစ်ခုကို အောင်မြင်စွာ ချိတ်ဆက်ထားသည်ကို ကျွန်ုပ်တို့တွေ့မြင်နိုင်ပါသည်။

ဤအမှားကိုပြင်ရန် အခြားနည်းလမ်းမှာ ပထမဒေတာဘောင်မှ ဒုတိယဒေတာဘောင်သို့ ကော်လံအမည်များကို အလိုအလျောက်သတ်မှတ်ရန် names() လုပ်ဆောင်ချက်ကို အသုံးပြုခြင်းဖြစ်သည်-

 #define two data frames
df1 <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2))

df2 <- data. frame (var3=c(3, 3, 6, 6, 8),
                  var4=c(1, 1, 2, 8, 9))

#rename second data frame columns
names(df2) <- names(df1)

#row bind the two data frames
rbind(df1, df2)

   var1 var2
1 1 7
2 3 7
3 3 8
4 4 3
5 5 2
6 3 1
7 3 1
8 6 2
9 6 8
10 8 9

တဖန်၊ rbind() သည် တူညီသောကော်လံအမည်များကို မျှဝေထားသောကြောင့် ဒေတာဘောင်နှစ်ခုကို အောင်မြင်စွာ စည်းစည်းနိုင်ခဲ့သည်။

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

R တွင် rbind ကိုအသုံးပြုနည်း (ဥပမာများနှင့်အတူ)
R တွင် cbind ကိုအသုံးပြုနည်း (ဥပမာများနှင့်အတူ)
R ရှိ ဒေတာဘောင်သို့ အတန်းများထည့်နည်း

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

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