R ဖြင့် dffits တွက်နည်း


စာရင်းဇယားများတွင်၊ ဆုတ်ယုတ်မှုပုံစံများတွင် မတူညီသော လေ့လာတွေ့ရှိချက်များအပေါ် မည်ကဲ့သို့ လွှမ်းမိုးမှုရှိသည်ကို ကျွန်ုပ်တို့ မကြာခဏ သိချင်ကြသည်။

လေ့လာမှုများ၏သြဇာလွှမ်းမိုးမှုကိုတွက်ချက်ရန်နည်းလမ်းတစ်ခုမှာ “ အံဝင်ခွင်ကျကွာခြားမှု” ကိုကိုယ်စားပြုသော DFFITS ဟုလူသိများသောမက်ထရစ်ကိုအသုံးပြုရန်ဖြစ်သည်။

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

ဤကျူတိုရီရယ်တွင် R မော်ဒယ်တစ်ခုရှိကြည့်ရှုမှုတစ်ခုစီအတွက် DFFITS ကို တွက်ချက်ပုံနှင့် မြင်ယောင်ပုံအဆင့်ဆင့်ကို ဥပမာပြထားသည်။

အဆင့် 1- ဆုတ်ယုတ်မှုပုံစံကို ဖန်တီးပါ။

ပထမဦးစွာ၊ R တွင်တည်ဆောက်ထားသော mtcars dataset ကိုအသုံးပြု၍ Multiple linear regression model ကို ဖန်တီးပါမည်။

 #load the dataset
data(mtcars)

#fit a regression model
model <- lm(mpg~disp+hp, data=mtcars)

#view model summary
summary(model)

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) 30.735904 1.331566 23.083 < 2nd-16 ***
available -0.030346 0.007405 -4.098 0.000306 ***
hp -0.024840 0.013385 -1.856 0.073679 .  
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 3.127 on 29 degrees of freedom
Multiple R-squared: 0.7482, Adjusted R-squared: 0.7309 
F-statistic: 43.09 on 2 and 29 DF, p-value: 2.062e-09

အဆင့် 2- စောင့်ကြည့်မှုတစ်ခုစီအတွက် DFFITS တွက်ချက်ပါ။

ထို့နောက်၊ မော်ဒယ်ရှိကြည့်ရှုမှုတစ်ခုစီအတွက် DFFITS တန်ဖိုးကိုတွက်ချက်ရန် Built-in dffits() လုပ်ဆောင်ချက်ကို အသုံးပြုပါမည်။

 #calculate DFFITS for each observation in the model
dffits <- as . data . frame (dffits(model))

#display DFFITS for each observation
challenges

                    dffits(model)
Mazda RX4 -0.14633456
Mazda RX4 Wag -0.14633456
Datsun 710 -0.19956440
Hornet 4 Drive 0.11540062
Hornet Sportabout 0.32140303
Valiant -0.26586716
Duster 360 0.06282342
Merc 240D -0.03521572
Merc 230 -0.09780612
Merc 280 -0.22680622
Merc 280C -0.32763355
Merc 450SE -0.09682952
Merc 450SL -0.03841129
Merc 450SLC -0.17618948
Cadillac Fleetwood -0.15860270
Lincoln Continental -0.15567627
Chrysler Imperial 0.39098449
Fiat 128 0.60265798
Honda Civic 0.35544919
Toyota Corolla 0.78230167
Toyota Corona -0.25804885
Dodge Challenger -0.16674639
AMC Javelin -0.20965432
Camaro Z28 -0.08062828
Pontiac Firebird 0.67858692
Fiat X1-9 0.05951528
Porsche 914-2 0.09453310
Lotus Europa 0.55650363
Ford Pantera L 0.31169050
Ferrari Dino -0.29539098
Maserati Bora 0.76464932
Volvo 142E -0.24266054

ပုံမှန်အားဖြင့်၊ ကျွန်ုပ်တို့သည် 2√ p/n ၏ သတ်မှတ်ချက်ထက် ကျော်လွန်သော DFFITS တန်ဖိုးများဖြင့် စူးစမ်းလေ့လာမှုများကို အနီးကပ်ကြည့်ရှုလေ့လာသည်-

  • p- မော်ဒယ်တွင် အသုံးပြုသည့် ခန့်မှန်းကိန်းရှင် အရေအတွက်
  • n- မော်ဒယ်တွင်အသုံးပြုသော လေ့လာတွေ့ရှိချက်အရေအတွက်

ဤဥပမာတွင်၊ တံခါးခုံသည် 0.5 ဖြစ်လိမ့်မည်။

 #find number of predictors in model
p <- length (model$coefficients)-1

#find number of observations
n <- nrow (mtcars)

#calculate DFFITS threshold value
thresh <- 2* sqrt (p/n)

thresh

[1] 0.5

၎င်းတို့အနက်မှ တစ်ခုက သတ်မှတ်ချက်ထက်ကျော်လွန်ခြင်း ရှိ၊ မရှိ ကြည့်ရှုရန် ၎င်းတို့၏ DFFITS တန်ဖိုးများကို အခြေခံ၍ လေ့လာမှုများကို စီစစ်နိုင်သည်-

 #sort observations by DFFITS, descending
dffits[ order (-dffits[' dffits(model) ']), ]

 [1] 0.78230167 0.76464932 0.67858692 0.60265798 0.55650363 0.39098449
 [7] 0.35544919 0.32140303 0.31169050 0.11540062 0.09453310 0.06282342
[13] 0.05951528 -0.03521572 -0.03841129 -0.08062828 -0.09682952 -0.09780612
[19] -0.14633456 -0.14633456 -0.15567627 -0.15860270 -0.16674639 -0.17618948
[25] -0.19956440 -0.20965432 -0.22680622 -0.24266054 -0.25804885 -0.26586716
[31] -0.29539098 -0.32763355

ပထမအကြိမ်လေ့လာသုံးသပ်ချက်ငါးခုတွင် DFFITS တန်ဖိုးသည် 0.5 ထက်ကြီးသည်ကို ကျွန်ုပ်တို့တွေ့မြင်နိုင်သည်၊ ဆိုလိုသည်မှာ ၎င်းတို့သည် မော်ဒယ်အပေါ် ကြီးမားသောသြဇာလွှမ်းမိုးမှုရှိမရှိကို ဆုံးဖြတ်ရန် ဤလေ့လာတွေ့ရှိချက်များကို ပိုမိုနီးကပ်စွာလေ့လာလိုပေမည်။

အဆင့် 3- စောင့်ကြည့်မှုတစ်ခုစီအတွက် DFFITS ကို မြင်ယောင်ကြည့်ပါ။

နောက်ဆုံးတွင်၊ လေ့လာမှုတစ်ခုစီအတွက် DFFITS ကို မြင်သာစေရန် အမြန်ဂရပ်တစ်ခုကို ဖန်တီးနိုင်သည်-

 #plot DFFITS values for each observation
plot(dffits(model), type = ' h ')

#add horizontal lines at absolute values for threshold
abline(h = thresh, lty = 2)
abline(h = -thresh, lty = 2)

R တွင် DFFITS

x-axis သည် dataset တွင်ကြည့်ရှုမှုတစ်ခုစီ၏အညွှန်းကိုပြသပြီး y-value သည်ကြည့်ရှုမှုတစ်ခုစီအတွက်သက်ဆိုင်ရာ DFFITS တန်ဖိုးကိုပြသသည်။

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

R တွင် ရိုးရှင်းသော linear regression လုပ်နည်း
R တွင် linear regression အများအပြားလုပ်ဆောင်နည်း
R တွင် leverage ကိန်းဂဏန်းများကို တွက်ချက်နည်း
R တွင်ကျန်ရှိသောကွက်ကွက်ဖန်တီးနည်း

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

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