Dplyr ကိုသုံးပြီး အုပ်စုအလိုက် ပထမအတန်းကို ဘယ်လိုရွေးမလဲ။


မကြာခဏဆိုသလို၊ သင်သည် R တွင် dplyr ပက်ကေ့ဂျ်ကို အသုံးပြု၍ အုပ်စုတစ်ခုစီ၏ ပထမအတန်းကို ရွေးချယ်လိုပေမည်။ ၎င်းကိုလုပ်ဆောင်ရန် အောက်ပါအခြေခံအထားအသိုကို သင်အသုံးပြုနိုင်ပါသည်။

 df %>%
  group_by (group_var) %>%
  arrange (values_var) %>%
  filter (row_number()== 1 )

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

ဥပမာ- R ရှိ အုပ်စုအလိုက် ပထမတန်းကို ရွေးပါ။

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

 #create dataset
df <- data.frame(team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C' ),
                 points=c(4, 9, 7, 7, 6, 13, 8, 8, 4, 17))

#view dataset
df

   team points
1 to 4
2 to 9
3 to 7
4 B 7
5 B 6
6 B 13
7 C 8
8 C 8
9 C 4
10 C 17

R တွင် အုပ်စုအလိုက် ပထမအတန်းကို ရွေးချယ်ရန် အောက်ပါကုဒ်သည် dplyr ပက်ကေ့ဂျ်ကို အသုံးပြုနည်းကို ပြသသည်-

 library (dplyr)

df %>%
  group_by (team) %>%
  arrange (points) %>%
  filter (row_number()== 1 )

# A tibble: 3 x 2
# Groups: team [3]
  team points
    
1 to 4
2 C 4
3 B 6

ပုံမှန်အားဖြင့်၊ arrange() သည် တန်ဖိုးများကို ကြီးလိုက်ကြီးလိုက် စီထားသော်လည်း တန်ဖိုးများကို ကြီးစဉ်ငယ်လိုက်ဖြင့် အလွယ်တကူ စီနိုင်သည်-

 df %>%
  group_by (team) %>%
  arrange ( desc (dots)) %>%
  filter (row_number()== 1 )

# A tibble: 3 x 2
# Groups: team [3]
  team points
    
1 C 17
2 B 13
3 to 9

အုပ်စုတစ်ခုစီရှိ nth အတန်းကိုရွေးချယ်ရန် ဤကုဒ်ကို အလွယ်တကူမွမ်းမံနိုင်သည်ကို သတိပြုပါ။ row_number() == n ကို ပြောင်းပါ။

ဥပမာအားဖြင့်၊ အုပ်စုအလိုက် ဒုတိယအတန်းကို ရွေးလိုပါက၊ အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။

 df %>%
  group_by (team) %>%
  arrange ( desc (dots)) %>%
  filter (row_number()== 2 )

သို့မဟုတ် အုပ်စုအလိုက် နောက်ဆုံးအတန်းကို ရွေးချယ်ရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်သည်။

 df %>%
  group_by (team) %>%
  arrange ( desc (dots)) %>%
  filter (row_number()== n() )

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

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

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

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