R- မမှန်ကန်သောအချက်အဆင့်၊ na တွင် ပြုပြင်နည်း


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

 Warning message:
In `[<-.factor`(`*tmp*`, iseq, value = "C"):
  invalid factor level, NA generated

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

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

သတိပေးချက်ကို ဘယ်လိုမျိုးပွားမလဲ။

R တွင် အောက်ပါ data frame ရှိသည်ဆိုပါစို့။

 #create data frame
df <- data. frame (team=factor(c('A', 'A', 'B', 'B', 'B')),
                 dots=c(99, 90, 86, 88, 95))

#view data frame
df

  team points
1 to 99
2 to 90
3 B 86
4 B 88
5 B 95

#view structure of data frame
str(df)

'data.frame': 5 obs. of 2 variables:
 $ team: Factor w/ 2 levels "A","B": 1 1 2 2 2
 $ points: num 99 90 86 88 95

အဖွဲ့ ပြောင်းကိန်းသည် အဆင့်နှစ်ဆင့်ပါရှိသည်- “A” နှင့် “B” ကို ကျွန်ုပ်တို့မြင်သည်။

ယခု ကျွန်ုပ်တို့သည် အဖွဲ့အတွက် တန်ဖိုး “ C” ကို အသုံးပြု၍ data frame ၏အဆုံးတွင် စာကြောင်းအသစ်တစ်ခုကို ထည့် ရန်ကြိုးစားသည်ဆိုပါစို့။

 #add new row to end of data frame
df[nrow(df) + 1,] = c('C', 100)

Warning message:
In `[<-.factor`(`*tmp*`, iseq, value = "C"):
  invalid factor level, NA generated

“ C” တန်ဖိုးသည် team variable အတွက် အချက်အဆင့်တစ်ခုအဖြစ် မတည်ရှိသောကြောင့် သတိပေးစာတစ်စောင် လက်ခံရရှိပါသည်။

၎င်းသည် သတိပေးချက်မက်ဆေ့ချ်တစ်ခုသာဖြစ်ပြီး R သည် ဒေတာဘောင်၏အဆုံးတွင် လိုင်းအသစ်ကို ဆက်လက်ထည့်သွင်းနေမည်ဖြစ်ပြီး၊ သို့သော် ၎င်းသည် ‘C’ အစား NA တန်ဖိုးကို အသုံးပြုမည်ဖြစ်သည်-

 #view updated data frame
df

  team points
1 to 99
2 to 90
3 B 86
4 B 88
5 B 95
6 NA 100

သတိပေးချက်ကို ဘယ်လိုရှောင်ရမလဲ

မမှန်ကန်သောအချက်အဆင့် သတိပေးချက်ကို ရှောင်ရှားရန်၊ ကျွန်ုပ်တို့သည် အချက်ပြကိန်းရှင်အား အက္ခရာကိန်းရှင်တစ်ခုသို့ ဦးစွာပြောင်းရန် လိုအပ်ပြီး စာကြောင်းအသစ်ကိုထည့်ပြီးနောက် ၎င်းကို ကိန်းရှင်ကိန်းရှင်အဖြစ်သို့ ပြန်ပြောင်းနိုင်သည်-

 #convert team variable to character
df$team <- as. character (df$team)

#add new row to end of data frame
df[nrow(df) + 1,] = c('C', 100)

#convert team variable back to factor
df$team <- as. factor (df$team)

#view updated data frame
df

  team points
1 to 99
2 to 90
3 B 86
4 B 88
5 B 95
6 C 100

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

“ C” တန်ဖိုးကို အဖွဲ့ ပြောင်းနိုင်သော အဆင့်သို့ ကိန်းဂဏန်းအဆင့်တစ်ခုအဖြစ် ပေါင်းထည့်ထားကြောင်းလည်း ကျွန်ုပ်တို့ စစ်ဆေးနိုင်သည်-

 #view structure of updated data frame
str(df)

'data.frame': 6 obs. of 2 variables:
 $ team: Factor w/ 3 levels "A","B","C": 1 1 2 2 2 3
 $points: chr "99" "90" "86" "88" ...

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

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

R- အကြောင်းပြချက်များတွင် ကွဲပြားသော လိုင်းနံပါတ်များ ပါဝင်ပါသည်။
R တွင် အသုံးမပြုသော အငြင်းအခုံများကို ရွေးချယ်ရာတွင် အမှားပြင်ဆင်နည်း
R တွင် ပြုပြင်နည်း- အစားထိုးမှုမှာ သုညအရှည်ရှိသည်။

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

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