Dplyr တွင် ကိန်းရှင်အမည်အဖြစ် စာကြောင်းတစ်ခုကို မည်သို့ဖြတ်သန်းရမည်နည်း။


သင်သည် dplyr တွင် ပြောင်းလဲနိုင်သောအမည်တစ်ခုအဖြစ် string တစ်ခုကိုဖြတ်သန်းရန် အောက်ပါနည်းလမ်းများထဲမှ တစ်ခုကို အသုံးပြုနိုင်သည်။

နည်းလမ်း 1- get() ကိုသုံးပါ

 df %>% filter(get(my_var) == ' A ')

နည်းလမ်း 2- .data ကိုသုံးပါ။

 df %>% filter(. data [[my_var]] == ' A ')

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#view data frame
df

  team points assists rebounds
1 A 99 33 30
2 A 90 28 28
3 A 86 31 24
4 B 88 39 24
5 B 95 34 28

ဥပမာ 1- get() ကို အသုံးပြု၍ dplyr တွင် ပြောင်းလဲနိုင်သော အမည်အဖြစ် စာကြောင်းတစ်ခုကို ဖြတ်သန်းပါ။

ကျွန်ုပ်တို့သည် dplyr ရှိ filter() လုပ်ဆောင်ချက်သို့ ပြောင်းလဲနိုင်သောအမည်အဖြစ် string တစ်ခုအား ကူးယူခြင်းဖြင့် ဒေတာဘောင်တစ်ခုကို စစ်ထုတ်ရန် ကြိုးစားပါက၊ ကျွန်ုပ်တို့သည် ဗလာဒေတာဘောင်တစ်ခုကို ရရှိလိမ့်မည်-

 library (dplyr)

#define variable
my_var <- ' team '

#attempt to filter for rows where team is equal to a variable
df %>% filter(my_var == ' A ')

[1] team points assists rebounds
<0 rows> (or 0-length row.names)

၎င်းကိုရရန်နည်းလမ်းတစ်ခုမှာ get() function တွင် variable name ကို ခြုံထားခြင်းဖြစ်သည် ။

 library (dplyr)

#define variable
my_var <- ' team '

#filter for rows where team is equal to a variable
df %>% filter(get(my_var) == ' A ')

  team points assists rebounds
1 A 99 33 30
2 A 90 28 28
3 A 86 31 24

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

ဥပမာ 2- .data ကို အသုံးပြု၍ dplyr တွင် ပြောင်းလဲနိုင်သော အမည်အဖြစ် စာကြောင်းတစ်ခုကို ပေးပို့ပါ။

dplyr ရှိ filter() လုပ်ဆောင်ချက်သို့ ပြောင်းလဲနိုင်သောအမည်အဖြစ် string တစ်ခုအား ပေးပို့ရန် နောက်တစ်နည်းမှာ အောက်ပါအတိုင်း .data လုပ်ဆောင်ချက်ကို အသုံးပြုခြင်းဖြစ်သည်-

 library (dplyr)

#define variable
my_var <- ' team '

#filter for rows where team is equal to a variable
df %>% filter(. data [[my_var]] == ' A ')

  team points assists rebounds
1 A 99 33 30
2 A 90 28 28
3 A 86 31 24

filter() လုပ်ဆောင်ချက်ရှိ .data လုပ်ဆောင်ချက်ကို အသုံးပြု၍ အသင်း A နှင့် ညီမျှသည့် အတန်းများအတွက်သာ ဒေတာဘောင်ရှိ အတန်းများကို အောင်မြင်စွာ စစ်ထုတ်နိုင်မည်ဖြစ်သည်။

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

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

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

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

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