R တွင် ပြုပြင်နည်း- စုစည်းမှုလုပ်ဆောင်ချက် ပျောက်ဆုံးနေခြင်း၊ ပုံသေ "အရှည်"
R ကိုအသုံးပြုရာတွင် သင်ကြုံတွေ့ရနိုင်သည့် အမှားတစ်ခုမှာ-
Aggregation function missing: defaulting to length
ရှည်လျားသောဖော်မတ်မှ ကျယ်ပြန့်သောဖော်မတ်သို့ ဒေတာဘောင်တစ်ခုပြောင်းရန် reshape2 ပက်ကေ့ခ်ျရှိ dcast လုပ်ဆောင်ချက်ကို သင်အသုံးပြုသောအခါတွင် ဤအမှားအယွင်းဖြစ်တတ်သော်လည်း ကျယ်ပြန့်ဒေတာဘောင်၏ဆဲလ်တစ်ခုချင်းစီတွင် တန်ဖိုးများစွာကို ထားရှိနိုင်ပါသည်။
အောက်ဖော်ပြပါ ဥပမာသည် ဤအမှားကို လက်တွေ့တွင် မည်သို့ပြုပြင်ရမည်ကို ပြသထားသည်။
အမှားကို ဘယ်လိုပြန်ထုတ်မလဲ။
ကုန်ပစ္စည်းအမျိုးမျိုး၏ရောင်းချမှုနှင့်ပတ်သက်သောအချက်အလက်ပါရှိသော R တွင်အောက်ပါဒေတာဘောင်ရှိသည်ဆိုပါစို့။
#create data frame
df <- data. frame (store=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
promotion=c('Y', 'Y', 'N', 'N', 'Y', 'Y', 'N', 'N'),
product=c(1, 2, 1, 2, 1, 2, 1, 2),
sales=c(12, 18, 29, 20, 30, 11, 15, 22))
#view data frame
df
store promotion product sales
1 AY 1 12
2 AY 2 18
3 YEAR 1 29
4 YEAR 2 20
5 BY 1 30
6 BY 2 11
7 BN 1 15
8 BN 2 22
ယခုကျွန်ုပ်တို့သည် data frame ကို long format မှ wide format သို့ပြောင်းရန် dcast function ကိုအသုံးပြုရန်ကြိုးစားသည်ဆိုပါစို့။
library (reshape2)
#convert data frame to wide format
df_wide <- dcast(df, store ~ product, value. var = " sales ")
#view result
df_wide
Aggregation function missing: defaulting to length
store 1 2
1 to 2 2
2 B 2 2
dcast လုပ်ဆောင်ချက်သည် အလုပ်လုပ်သော်လည်း စုစည်းလုပ်ဆောင်ချက် ပျောက်ဆုံးနေသည့် သတိပေးစာကို ကျွန်ုပ်တို့ လက်ခံရရှိကြောင်း သတိပြုပါ။
အမှားကိုဘယ်လိုပြင်မလဲ။
သတိပေးစာတစ်စောင် လက်ခံရရှိရခြင်းအကြောင်းရင်းမှာ စတိုးဆိုင် နှင့် ကုန်ပစ္စည်း ပေါင်းစပ်မှုတစ်ခုစီအတွက် ကျွန်ုပ်တို့ ရောင်းချမှု အတွက် အသုံးပြုနိုင်သည့် အလားအလာတန်ဖိုးနှစ်ခု ရှိနေသောကြောင့်ဖြစ်သည်။
ဥပမာ၊ စတိုးဆိုင် A နှင့် ထုတ်ကုန် 1 အတွက် အရောင်းတန်ဖိုးသည် 12 သို့မဟုတ် 29 ဖြစ်နိုင်သည်။
ထို့ကြောင့် dcast လုပ်ဆောင်ချက်သည် ၎င်း၏ စုစည်းမှုလုပ်ဆောင်ချက်အဖြစ် “ အရှည်” ကို ပုံသေသတ်မှတ်သည်။
ဥပမာအားဖြင့်၊ ကြီးမားသောဒေတာဘေ့စ်သည် စတိုးဆိုင် A နှင့် ထုတ်ကုန် 1 အတွက် စုစုပေါင်း အရောင်းတန်ဖိုး 2 ခုရှိကြောင်း ပြောပြသည်။
၎င်းအစား မတူညီသော စုစည်းမှုလုပ်ဆောင်ချက်ကို အသုံးပြုလိုပါက fun.aggregate ကို အသုံးပြုနိုင်ပါသည်။
ဥပမာအားဖြင့်၊ စတိုးဆိုင် နှင့် ကုန်ပစ္စည်း အလိုက် ရောင်းချမှုပေါင်းလဒ်ကို တွက်ချက်ရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။
library (reshape2)
#convert data frame to wide format
df_wide <- dcast(df, store ~ product, value. var = " sales ", fun. aggregate =sum)
#view result
df_wide
store 1 2
1 A 41 38
2 B 45 33
ဤသည်မှာ ကြီးမားသောဒေတာဘောင်ရှိ တန်ဖိုးများကို အဓိပ္ပာယ်ဖွင့်ဆိုပုံဖြစ်သည်-
- စတိုးဆိုင် A နှင့် ကုန်ပစ္စည်း 1 ၏ရောင်းချမှုပေါင်းလဒ်သည် 41 ဖြစ်သည်။
- စတိုးဆိုင် A နှင့် ထုတ်ကုန် 2 ၏ရောင်းအား၏ပေါင်းလဒ်သည် 38 ဖြစ်သည်။
- စတိုးဆိုင် B နှင့် ထုတ်ကုန် 1 ၏ရောင်းချမှုပေါင်းစုသည် 45 ဖြစ်သည်။
- စတိုးဆိုင် B နှင့် ထုတ်ကုန် 2 ၏ရောင်းချမှုပေါင်းလဒ်သည် 33 ဖြစ်သည်။
fun.aggregate အငြင်းအခုံကို အသုံးပြုထားသောကြောင့် ယခုတစ်ကြိမ်တွင် သတိပေးစာများ မရရှိကြောင်း သတိပြုပါ။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် R တွင် အခြားသော ဘုံအမှားများကို မည်သို့ပြုပြင်ရမည်ကို ရှင်းပြထားပါသည်။
R တွင် ပြုပြင်နည်း- မျှော်လင့်မထားသော စာကြောင်း ကိန်းသေ
R တွင် ပြင်ဆင်နည်း- ExtractVars တွင် မမှန်ကန်သော နမူနာပုံစံဖော်မြူလာ
R- argument သည် ကိန်းဂဏာန်းမဟုတ်သလို ယုတ္တိလည်းမဟုတ်- return na တွင် ပြုပြင်နည်း