Dplyr တွင် တစ်ခုမှလွဲ၍ ကော်လံအားလုံးဖြင့် အုပ်စုဖွဲ့နည်း
R ရှိ dplyr ပက်ကေ့ဂျ်ကို အသုံးပြု၍ ဒေတာဘောင်တစ်ခုတွင် ကော်လံတစ်ခုမှလွဲ၍ အားလုံးကို အုပ်စုဖွဲ့ရန် အောက်ပါအခြေခံအထားအသိုကို သင်အသုံးပြုနိုင်သည်-
df %>%
group_by(across(c( - this_column)))
ဤဥပမာသည် ဤ_ကော်လံ ဟုခေါ်သော ကော်လံမှလွဲ၍ ဒေတာဘောင်အားလုံးကို ကော်လံအားလုံးဖြင့် အုပ်စုဖွဲ့ထားသည်။
ဖော်မြူလာရှိ အနုတ်လက္ခဏာလက္ခဏာ ( – ) သည် dplyr အား group_by() လုပ်ဆောင်ချက်တွင် ထိုကော်လံကို ဖယ်ထုတ်ရန် ညွှန်ပြသည်ကို သတိပြုပါ။
အောက်ဖော်ပြပါ ဥပမာသည် ဤ syntax ကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။
ဥပမာ- dplyr တွင် တစ်ခုမှလွဲ၍ ကော်လံအားလုံးဖြင့် အုပ်စုဖွဲ့ပါ။
R တွင် ဘတ်စကက်ဘောကစားသမားများအကြောင်း အချက်အလက်များစွာပါရှိသော အောက်ပါဒေတာဘောင်ရှိသည်ဆိုပါစို့။
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'), starter=c('Y', 'Y', 'Y', 'N', 'Y', 'N', 'N', 'N'), dots=c(99, 104, 119, 113)) #view data frame df team position starter points 1 AGY 99 2 AGY 104 3 AFY 119 4 AFN 113 5 BGY 99 6 BGN 104 7 BFN 119 8 BFN 113
ယခု ကျွန်ုပ်တို့သည် ဒေတာဘောင်ရှိ အခြားကော်လံများအားလုံးတွင် အုပ်စုဖွဲ့ထားသော အမှတ် ကော်လံရှိ အမြင့်ဆုံးတန်ဖိုးကို ရှာဖွေလိုသည်ဆိုပါစို့။
ဒါကိုလုပ်ဖို့ အောက်ပါ syntax ကို သုံးနိုင်ပါတယ်။
library (dplyr) #group by all columns except points column and find max points df %>% group_by(across(c( - points))) %>% mutate(max_points = max(points)) # A tibble: 8 x 5 # Groups: team, position, starter [6] team position starter points max_points 1 AGY 99 104 2 AGY 104 104 3 AFY 119 119 4 AFN 113 113 5 BGY 99 99 6 BGN 104 104 7 BFN 119 119 8 BFN 113 119
ရလဒ်မှ ကျွန်ုပ်တို့ မြင်နိုင်သည်-
- A ၏ အသင်း တန်ဖိုး၊ အနေအထား တန်ဖိုး G နှင့် Y ၏ စတင် တန်ဖိုးသည် 104 ရှိသော ကစားသမားအားလုံးအတွက် အများဆုံးအမှတ်တန်ဖိုးဖြစ်သည်။
- အသင်း တန်ဖိုး A ၊ ရာထူး တန်ဖိုး F နှင့် Y ၏ စတင် တန်ဖိုးသည် 119 ရှိသော အသင်းကစားသမားအားလုံးအတွက် အများဆုံးအမှတ်တန်ဖိုးဖြစ်သည်။
- A ၏ အသင်း တန်ဖိုး၊ အနေအထား တန်ဖိုး F နှင့် N ၏ စတင် တန်ဖိုးသည် 113 ရှိသော ကစားသမားအားလုံးအတွက် အများဆုံးအမှတ်တန်ဖိုးဖြစ်သည်။
နောက် … ပြီးတော့။
group_by() လုပ်ဆောင်ချက်ထဲသို့ အစက်များ မှလွဲ၍ ကော်လံအမည်တိုင်းကို ရိုက်ထည့်ပါက တူညီသောရလဒ်ကို ရရှိနိုင်ကြောင်း သတိပြုပါ။
library (dplyr) #group by all columns except points column and find max points df %>% group_by(across(c(team, position, starter))) %>% mutate(max_points = max(points)) # A tibble: 8 x 5 # Groups: team, position, starter [6] team position starter points max_points 1 AGY 99 104 2 AGY 104 104 3 AFY 119 119 4 AFN 113 113 5 BGY 99 99 6 BGN 104 104 7 BFN 119 119 8 BFN 113 119
၎င်းသည် ယခင်ဥပမာ၏ရလဒ်နှင့် ကိုက်ညီသည်။
သို့သော်၊ group_by() လုပ်ဆောင်ချက်ရှိ အမှတ်များ ကော်လံများကို အခြားကော်လံများအားလုံး၏ အမည်များကို ရိုက်ထည့်ခြင်းထက် ပိုမိုလွယ်ကူကြောင်း သတိပြုပါ။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် dplyr ကိုအသုံးပြု၍ အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
dplyr ကို အသုံးပြု၍ အချို့သော စာကြောင်းများပါရှိသော အတန်းများကို စစ်ထုတ်နည်း
dplyr ကို အသုံးပြု၍ နှိုင်းရကြိမ်နှုန်းများကို တွက်ချက်နည်း
dplyr ကိုသုံးပြီး အုပ်စုအလိုက် ပထမတန်းကို ဘယ်လိုရွေးမလဲ။