R တွင် အခြားဖော်ပြချက်ဖြစ်ပါက nested တစ်ခုကို မည်သို့ရေးရမည်နည်း (ဥပမာများဖြင့်)


Base R ရှိ ifelse() လုပ်ဆောင်ချက်ကို လျင်မြန်သော if-else ဖော်ပြချက်များအား ရေးသားရန် အသုံးပြုနိုင်သည်။ ဤလုပ်ဆောင်ချက်သည် အောက်ပါ syntax ကိုအသုံးပြုသည်-

ifelse (စမ်းသပ်၊ ဟုတ်၊ မဟုတ်)

ရွှေ-

  • စမ်းသပ်မှု- ယုတ္တိဗေဒစမ်းသပ်မှု
  • ဟုတ်သည်- လော့ဂျစ်စမ်းသပ်မှု မှန်ပါက ပြန်ပေးရမည့်တန်ဖိုး
  • နံပါတ်- လော့ဂျစ်စမ်းသပ်မှု မှားပါက ပြန်ပေးရမည့်တန်ဖိုး

အောက်ဖော်ပြပါဒေတာဘောင်ကို အသုံးပြု၍ if else statement များအပြင် R ရှိ if else statements များရေးရန် ဤလုပ်ဆောင်ချက်ကို အသုံးပြုနည်းကို ဤသင်ခန်းစာတွင် ရှင်းပြထားသည်။

 #create data frame
df <- data.frame(team = c('A', 'A', 'B', 'B', 'B', 'C', 'D'),
                 points = c(4, 7, 8, 8, 8, 9, 12),
                 rebounds = c(3, 3, 4, 4, 6, 7, 7))

#view data frame
df

  team points rebounds
1 to 4 3
2 to 7 3
3 B 8 4
4 B 8 4
5 B 8 6
6 C 9 7
7 D 12 7

ဥပမာ 1- အခြားဖော်ပြချက်ကို အခြေခံမည်သို့ရေးမည်နည်း။

အောက်ဖော်ပြပါကုဒ်သည် “ အဖွဲ့” ကော်လံတန်ဖိုးအပေါ် အခြေခံထားသည့် ဒေတာဘောင်တွင် ကော်လံအသစ်တစ်ခုကို ဖန်တီးနည်းကို ပြသသည်-

 #create new column in data frame
df$rating <- ifelse (df$team == ' A ', ' great ', ' bad ')

#view data frame
df

  team points rebounds rating
1 A 4 3 great
2 A 7 3 great
3 B 8 4 bad
4 B 8 4 bad
5 B 8 6 bad
6 C 9 7 bad
7 D 12 7 bad

ဤရိုးရှင်းသော ifelse ထုတ်ပြန်ချက်သည် R ကို အောက်ပါအတိုင်းလုပ်ဆောင်ရန် ပြောသည်-

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

ဥပမာ 2- If Else statement ကို nested လုပ်နည်း

nested if else statement ကိုရေးခြင်းဖြင့် အောက်ပါကုဒ်သည် ဒေတာဘောင်တွင် ကော်လံအသစ်တစ်ခုကို ဖန်တီးနည်းကို ပြသသည်-

 #create new column in data frame
df$rating <- ifelse (df$team == ' A ', ' great ',
               ifelse (df$team == ' B ', ' OK ', ' bad '))

#view data frame
df

  team points rebounds rating
1 A 4 3 great
2 A 7 3 great
3 B 8 4 OK
4 B 8 4 OK
5 B 8 6 OK
6 C 9 7 bad
7 D 12 7 bad

ဤ nested ifelse ထုတ်ပြန်ချက်သည် R အား အောက်ပါအတိုင်းလုပ်ဆောင်ရန် ပြောသည်-

  • အသင်းကော်လံရှိတန်ဖိုးသည် “ A” ဖြစ်ပါက ကစားသမားအား “ အကောင်းဆုံး” အဆင့်သတ်မှတ်ပေးပါ။
  • မဟုတ်ပါက၊ အသင်းကော်လံရှိတန်ဖိုးသည် “ B” ဖြစ်ပါက ကစားသမားအား “ OK” အဆင့်သတ်မှတ်ပေးပါ။
  • မဟုတ်ရင် ကစားသမား “ ဆင်းရဲ” ကို လက်လွှတ်လိုက်ပါ။

ဥပမာ 3- အခြားဖော်ပြချက်များရှိပါက ပိုရှည်အောင် မည်သို့ရေးမည်နည်း။

if else statement ကို ရေးခြင်းဖြင့် အောက်ပါကုဒ်သည် ဒေတာဘောင်တွင် ကော်လံအသစ်တစ်ခုကို ဖန်တီးနည်းကို ပြသသည်-

 #create new column in data frame
df$rating <- ifelse (df$team == ' A ', ' great ',
               ifelse (df$team == ' B ', ' OK ',
                 ifelse (df$team == ' C ', ' decent ', ' bad ')))

#view data frame
df

  team points rebounds rating
1 A 4 3 great
2 A 7 3 great
3 B 8 4 OK
4 B 8 4 OK
5 B 8 6 OK
6 C 9 7 decent
7 D 12 7 bad

ဤ nested ifelse ထုတ်ပြန်ချက်သည် R အား အောက်ပါအတိုင်းလုပ်ဆောင်ရန် ပြောသည်-

  • အသင်းကော်လံရှိတန်ဖိုးသည် “ A” ဖြစ်ပါက ကစားသမားအား “ အကောင်းဆုံး” အဆင့်သတ်မှတ်ပေးပါ။
  • မဟုတ်ပါက၊ အသင်းကော်လံရှိတန်ဖိုးသည် “ B” ဖြစ်ပါက ကစားသမားအား “ OK” အဆင့်သတ်မှတ်ပေးပါ။
  • မဟုတ်ပါက၊ အသင်းကော်လံရှိတန်ဖိုးသည် “ C” ဖြစ်ပါက ကစားသမားအား “ သင့်လျော်သော” အဆင့်သတ်မှတ်ပေးပါ။
  • မဟုတ်ရင် ကစားသမား “ ဆင်းရဲ” ကို လက်လွှတ်လိုက်ပါ။

သင်အလိုရှိသရွေ့ nested ifelse ဖော်ပြချက်များအား ရေးသားရန် ဤအတိအကျပုံစံကို အသုံးပြုနိုင်ကြောင်း သတိပြုပါ။

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

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

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