R တွင် အုပ်စုအလိုက် ပထမဆုံး n တန်ဖိုးများကို မည်သို့ရွေးချယ်ရမည်နည်း။


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

နည်းလမ်း 1- အုပ်စုတစ်ခုစီအတွက် ပထမဆုံး N တန်ဖိုးများကို ရွေးပါ (ချိတ်ဆက်မှုများကို လျစ်လျူရှုပါ)

 library (dplyr)

#select top 5 values by group
df %>% 
  arrange(desc(values_column)) %>% 
  group_by(group_column) %>%
  slice(1:5)

နည်းလမ်း 2- အုပ်စုအလိုက် ပထမဆုံး N တန်ဖိုးများကို ရွေးပါ (ချိတ်ဆက်မှုများ ပါဝင်သည်)

 library (dplyr)

#select top 5 values by group
df %>%
  group_by(group_column) %>%
  top_n(5, values_column)

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(19, 22, 15, NA, 14, 25, 25, 25),
                 rebounds=c(10, 6, 3, 7, 11, 13, 9, 12))

#view data frame
df

  team points rebounds
1 A 19 10
2 to 22 6
3 to 15 3
4 A NA 7
5 B 14 11
6 B 25 13
7 B 25 9
8 B 25 12

ဥပမာ 1- အုပ်စုတစ်ခုစီအတွက် ပထမဆုံး N တန်ဖိုးများကို ရွေးပါ (ချိတ်ဆက်မှုများကို လျစ်လျူရှုပါ)

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

 library (dplyr)

#select top 2 rows with highest points values, grouped by team 
df %>% 
  arrange(desc(points)) %>% 
  group_by(team) %>%
  slice(1:2)

# A tibble: 4 x 3
# Groups: team [2]
  team points rebounds
        
1 to 22 6
2 A 19 10
3 B 25 13
4 B 25 9

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

Team B အတွက်၊ အမှတ်အများဆုံးတန်ဖိုး ( 25 ) အတွက် ချိတ်ထားသော အတန်းသုံးတန်းရှိသော်လည်း အထွက်တွင် နှစ်တန်းသာ ပြန်ရသည်ကို သတိပြုပါ။

ဤနည်းလမ်းသည် လင့်ခ်များကို လျစ်လျူရှုသည်။

ဥပမာ 2- အုပ်စုတစ်ခုစီအတွက် ပထမဆုံး N တန်ဖိုးများကို ရွေးပါ (ချိတ်ဆက်မှုများ ပါ၀င်သည်)

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

 library (dplyr)

#select top 2 rows with highest points values, grouped by team 
df %>%
  group_by(team) %>%
  top_n(2, dots)

# A tibble: 5 x 3
# Groups: team [2]
  team points rebounds
        
1 A 19 10
2 to 22 6
3 B 25 13
4 B 25 9
5 B 25 12

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

Team B အတွက်၊ အမြင့်ဆုံးအမှတ်တန်ဖိုး ( 25 ) အတွက် စာကြောင်းသုံးကြောင်းကို ချိတ်ဆက်ထားသောကြောင့် ဤနည်းလမ်းသည် နောက်ဆုံးရလဒ်တွင် အဆိုပါစာကြောင်းသုံးကြောင်းပါ၀င်သည်ကို သတိပြုပါ။

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

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

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

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

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