R တွင် lm() function ပါသော ဒေတာဘောင်အပိုင်းခွဲတစ်ခုကို မည်သို့အသုံးပြုရမည်နည်း။
lm() လုပ်ဆောင်ချက်ကို R တွင် ဆုတ်ယုတ်မှုပုံစံနှင့် အံဝင်ခွင်ကျဖြစ်စေရန်အတွက် lm() လုပ်ဆောင်ချက်ကို အသုံးပြုသောအခါတွင် ဒေတာဘောင်တစ်ခု၏ အစုခွဲတစ်ခုသာ အသုံးပြုရန် အစုခွဲ အငြင်းအခုံကို အသုံးပြုနိုင်သည်။
fit <- lm(points ~ fouls + minutes, data=df, subset=(minutes> 10 ))
ဤဥပမာသည် တုံ့ပြန်မှုကိန်းရှင်အဖြစ် အမှတ်များ အသုံးပြုကာ ကြိုတင်ခန့်မှန်းကိန်းရှင်များအဖြစ် လူစုလူဝေး နှင့် မိနစ်များကို အသုံးပြု၍ ဆုတ်ယုတ်မှုပုံစံနှင့် သက်ဆိုင်သည်။
ဆုတ်ယုတ်မှု ပုံစံနှင့် အံဝင်ခွင်ကျဖြစ်သည့်အခါ မိနစ် မပြောင်းလဲနိုင်သော ကိန်းရှင် 10 ထက်ကြီးသော ဒေတာဘောင်ရှိ အတန်းခွဲများမှ တန်းများကိုသာ သတ်မှတ်ပေးသည်။
အောက်ဖော်ပြပါ ဥပမာသည် ဤ syntax ကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။
ဥပမာ- R တွင် lm() ဖြင့် ဒေတာဘောင်ခွဲတစ်ခုကို မည်သို့အသုံးပြုရမည်နည်း။
ဘတ်စကက်ဘောကစားသမား 10 ယောက်က ကစားခဲ့တဲ့ မိနစ်၊ စုစုပေါင်း ပြစ်ချက်တွေနဲ့ စုစုပေါင်းရမှတ်တွေအကြောင်း အချက်အလက်တွေ ပါဝင်နေတဲ့ R မှာ အောက်ပါဒေတာဘောင်တစ်ခု ရှိတယ်ဆိုပါစို့။
#create data frame df <- data. frame (minutes=c(5, 10, 13, 14, 20, 22, 26, 34, 38, 40), fouls=c(5, 5, 3, 4, 2, 1, 3, 2, 1, 1), points=c(6, 8, 8, 7, 14, 10, 22, 24, 28, 30)) #view data frame df minutes fouls points 1 5 5 6 2 10 5 8 3 13 3 8 4 14 4 7 5 20 2 14 6 22 1 10 7 26 3 22 8 34 2 24 9 38 1 28 10 40 1 30
ကျွန်ုပ်တို့သည် အောက်ပါ multiple linear regression model ကို ကိုက်ညီလိုသည်ဆိုပါစို့။
အမှတ်များ = β 0 + β 1 (မိနစ်) + β 2 (မိုက်မဲမှုများ)
သို့သော်၊ မိနစ် variable သည် 10 ထက်ကြီးသော ဒေတာဘောင်ရှိ အတန်းများကိုသာ အသုံးပြုလိုသည်ဆိုပါစို့။
ကျွန်ုပ်တို့သည် ဤ ဆုတ်ယုတ်မှု ပုံစံနှင့်ကိုက်ညီရန် lm() လုပ်ဆောင်ချက်ကို အသုံးပြုနိုင်သည်။
#fit multiple linear regression model (only for rows where minutes>10) fit <- lm(points ~ fouls + minutes, data=df, subset=(minutes> 10 )) #view model summary summary(fit) Call: lm(formula = points ~ fouls + minutes, data = df, subset = (minutes > 10)) Residuals: 3 4 5 6 7 8 9 10 1.2824 -2.5882 2.2000 -1.9118 2.3588 -1.7176 0.1824 0.1941 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) -11.8353 4.9696 -2.382 0.063046 . fouls 1.8765 1.0791 1.739 0.142536 minutes 0.9941 0.1159 8.575 0.000356 *** --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 2.255 on 5 degrees of freedom Multiple R-squared: 0.9574, Adjusted R-squared: 0.9404 F-statistic: 56.19 on 2 and 5 DF, p-value: 0.0003744
ကျွန်ုပ်တို့သည် ဆုတ်ယုတ်မှုပုံစံနှင့်ကိုက်ညီရန် ဒေတာဘောင်မှ စူးစမ်းမှုမည်မျှရှိသည်ကို ကြည့်ရှုရန် nobs() လုပ်ဆောင်ချက်ကို ကျွန်ုပ်တို့အသုံးပြုနိုင်သည်-
#view number of observations used to fit model
nobs(fit)
[1] 8
မော်ဒယ်နှင့်ကိုက်ညီရန် ဒေတာဘောင် ၈ တန်းကို အသုံးပြုခဲ့ကြောင်း ကျွန်ုပ်တို့တွေ့မြင်နိုင်ပါသည်။
မူရင်းဒေတာဘောင်ကို ကြည့်လျှင် အတန်း 8 တန်း အတိအကျသည် မိနစ် variable အတွက် 10 ထက် ကြီးသည်ကို တွေ့နိုင်သည်၊ ဆိုလိုသည်မှာ ထိုအတန်းများကို regression model နှင့် အံဝင်ခွင်ကျဖြစ်သည့်အခါတွင်သာ အတန်းများကို အသုံးပြုသည်ဟု ဆိုလိုသည်။
အခြေအနေများစွာအပေါ်အခြေခံ၍ ဒေတာဘောင်ကို ခွဲသတ်မှတ်ရန် အစုခွဲ အငြင်းပွားမှုတွင် & အော်ပရေတာကိုလည်း အသုံးပြုနိုင်သည်။
ဥပမာအားဖြင့်၊ မိနစ် 10 ထက်ကြီးပြီး အမှားအယွင်းများ 4 ထက်နည်းသည့် ဒေတာဘောင်ရှိ အတန်းများကိုသာ အသုံးပြု၍ ဆုတ်ယုတ်မှုပုံစံတစ်ခုကို ကိုက်ညီရန် အောက်ပါအထားအသိုကို အသုံးပြုနိုင်သည်။
#fit multiple linear regression model (only where minutes>10 & fouls<4) fit <- lm(points ~ fouls + minutes, data=df, subset=(minutes> 10 & fouls< 4 )) #view number of observations used to fit model nobs(fit) [1] 7
ရလဒ်မှ ဒေတာဘောင်၏ အတန်း ၇ တန်းကို ဤအထူးမော်ဒယ်နှင့် အံဝင်ခွင်ကျဖြစ်အောင် အသုံးပြုကြောင်း ကျွန်ုပ်တို့ တွေ့မြင်နိုင်သည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် R တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
R တွင် ရိုးရှင်းသော linear regression လုပ်နည်း
R တွင် linear regression အများအပြားလုပ်ဆောင်နည်း
R တွင်ကျန်ရှိသောကွက်ကွက်ဖန်တီးနည်း