Dplyr ကို အသုံးပြု၍ နှိုင်းရကြိမ်နှုန်းများကို တွက်ချက်နည်း
မကြာခဏဆိုသလို R ရှိ ဒေတာဘောင်တစ်ခု၏ တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသောကော်လံများတွင် တန်ဖိုးများ၏ နှိုင်းရကြိမ်နှုန်း/အချိုးများကို တွက်ချက်လိုပေမည်။
ကံကောင်းထောက်မစွာ၊ ၎င်းသည် dplyr ပက်ကေ့ခ်ျရှိ လုပ်ဆောင်ချက်များကို အသုံးပြု၍ လုပ်ဆောင်ရန် လွယ်ကူသည်။ ဤသင်ခန်းစာတွင် အောက်ပါဒေတာဘောင်ရှိ နှိုင်းရကြိမ်နှုန်းများကို တွက်ချက်ရန် ဤလုပ်ဆောင်ချက်များကို မည်သို့အသုံးပြုရမည်ကို ပြသသည်-
#create data frame df <- data.frame(team = c('A', 'A', 'A', 'B', 'B', 'B', 'B'), position = c('G', 'F', 'F', 'G', 'G', 'G', 'F'), points = c(12, 15, 19, 22, 32, 34, 39)) #view data frame df team position points 1 AG 12 2 AF15 3 FY 19 4 BG 22 5 BG 32 6 BG 34 7 BF 39
ဥပမာ 1- ကိန်းရှင်တစ်ခု၏ နှိုင်းရကြိမ်နှုန်း
အောက်ပါကုဒ်သည် ဒေတာဘောင်ရှိ အဖွဲ့တစ်ခုစီ၏ နှိုင်းရကြိမ်နှုန်းကို တွက်ချက်နည်းကို ပြသသည်-
library(dplyr) df %>% group_by (team) %>% summarize (n = n()) %>% mutate (freq = n / sum(n)) # A tibble: 2 x 3 team n freq 1 to 3 0.429 2 B 4 0.571
Team B သည် အတန်းအားလုံး၏ 57.1% အတွက် ဒေတာဘောင်ရှိ အတန်းအားလုံး၏ 42.9% နှင့် Team B သည် ကျန်အတန်းများ၏ 57.1% ကို တွက်ချက်ထားကြောင်း ၎င်းကဆိုသည်။ ၎င်းတို့သည် 100% အထိ ပေါင်းထည့်ကြောင်း သတိပြုပါ။
ဆက်စပ်- ပြီးပြည့်စုံသော လမ်းညွှန်- R ဖြင့် ဒေတာကို အုပ်စုဖွဲ့ပြီး အကျဉ်းချုပ်နည်း
ဥပမာ 2- ကိန်းရှင်များစွာ၏ နှိုင်းရကြိမ်နှုန်း
အောက်ဖော်ပြပါ ကုဒ်သည် အဖွဲ့ တစ်ဖွဲ့လျှင် ရာထူးများ၏ ကြိမ်နှုန်းကို တွက်ချက်နည်းကို ပြသည်-
library(dplyr) df %>% group_by (team, position) %>% summarize (n = n()) %>% mutate (freq = n / sum(n)) # A tibble: 4 x 4 # Groups: team [2] team position n freq 1 AF 2 0.667 2 AG 1 0.333 3 BF 1 0.250 4 BG 3 0.750
၎င်းသည် ကျွန်ုပ်တို့အား ပြောပြသည်-
- အသင်း A ကစားသမားများ၏ 66.7% သည် F နေရာတွင် ရှိနေသည်။
- အသင်း A ကစားသမားများ၏ 33.3% သည် G နေရာတွင် ရှိနေသည်။
- အသင်း A ကစားသမားများ၏ 25.0% သည် F နေရာတွင် ရှိနေသည်။
- အသင်း B ကစားသမားများ၏ 75.0% သည် G နေရာတွင် ရှိနေသည်။
ဆက်စပ်- R တွင် ကိန်းရှင်အသစ်များဖန်တီးရန် Mutate ကိုအသုံးပြုနည်း
ဥပမာ 3- နှိုင်းရကြိမ်နှုန်းများကို ရာခိုင်နှုန်းများအဖြစ် ပြပါ။
အောက်ပါကုဒ်သည် အဖွဲ့အလိုက် ရာထူးများ၏ နှိုင်းရကြိမ်နှုန်းကို တွက်ချက်နည်းနှင့် ဤနှိုင်းရကြိမ်နှုန်းများကို ရာခိုင်နှုန်းများအဖြစ် ပြသနည်းကို ပြသသည်-
library(dplyr) df %>% group_by (team, position) %>% summarize (n = n()) %>% mutate (freq = paste0(round(100 * n/sum(n), 0), ' % ')) # A tibble: 4 x 4 # Groups: team [2] team position n freq 1 AF 2 67% 2 GA 1 33% 3 BF 1 25% 4 BG 3 75%
နောက်ထပ် R သင်ခန်းစာများကို ဤနေရာတွင် ရှာဖွေနိုင်ပါသည်။