R တွင် multicollinearity ကိုစမ်းသပ်နည်း
ဆုတ်ယုတ်မှု ခွဲခြမ်းစိတ်ဖြာမှုတွင်၊ ဆုတ်ယုတ်မှုပုံစံတွင် ထူးခြားသော သို့မဟုတ် အမှီအခိုကင်းသော အချက်အလက်များကို မပေးစွမ်းနိုင်သော ကိန်းရှင်နှစ်ခု သို့မဟုတ် ထို့ထက်ပိုသော ခန့်မှန်းချက်ကိန်းရှင်များသည် တစ်ခုနှင့်တစ်ခု အလွန်ဆက်စပ်နေသောအခါတွင်၊ ပေါင်းစည်းထားသော ကိန်းဂဏန်းများ ဖြစ်ပေါ်လာသည်။
ကြိုတင်ခန့်မှန်းကိန်းရှင်များအကြား အပြန်အလှန်ဆက်စပ်မှုဒီဂရီသည် မြင့်မားပါက၊ ၎င်းသည် ဆုတ်ယုတ်မှုပုံစံကို အံဝင်ခွင်ကျဖြစ်စေပြီး ပြန်ဆိုသည့်အခါတွင် ပြဿနာများဖြစ်စေနိုင်သည်။
ဆုတ်ယုတ်မှုပုံစံတစ်ခုတွင် multicollinearity ကိုရှာဖွေရန် အရိုးရှင်းဆုံးနည်းလမ်းမှာ မကြာခဏ အတိုကောက် VIF ကွဲပြားမှု ငွေကြေးဖောင်းပွမှုအချက်ဟု လူသိများသော မက်ထရစ်ကို တွက်ချက်ခြင်းဖြစ်သည်။
VIF သည် မော်ဒယ်တစ်ခုရှိ ခန့်မှန်းသူ ကိန်းရှင်များကြား ဆက်နွယ်မှု၏ အားကို တိုင်းတာသည်။ ၎င်းသည် 1 နှင့် positive infinity ကြားတန်ဖိုးတစ်ခုယူသည်။
VIF တန်ဖိုးများကို ဘာသာပြန်ရန် အောက်ဖော်ပြပါ စည်းမျဉ်းများကို ကျွန်ုပ်တို့အသုံးပြုသည်-
- VIF = 1- ပေးထားသော ခန့်မှန်းပေးသူ ကိန်းရှင်နှင့် မော်ဒယ်ရှိ အခြားသော ခန့်မှန်းသူ ကိန်းရှင်ကြား ဆက်စပ်မှု မရှိပါ။
- VIF 1 နှင့် 5 အကြား- ပေးထားသော ခန့်မှန်းသူကိန်းရှင်နှင့် မော်ဒယ်ရှိ အခြားသော ခန့်မှန်းသူကိန်းရှင်များအကြား အလယ်အလတ်ဆက်စပ်မှုရှိပါသည်။
- VIF > 5 : ပေးထားသော ခန့်မှန်းပေးသူ ကိန်းရှင်နှင့် မော်ဒယ်ရှိ အခြားသော ခန့်မှန်းသူ ကိန်းရှင်များကြား ခိုင်မာသော ဆက်စပ်မှု ရှိပါသည်။
အောက်ဖော်ပြပါ ဥပမာသည် မော်ဒယ်ရှိ ကြိုတင်ခန့်မှန်းသူ ကိန်းရှင်တစ်ခုစီအတွက် VIF တန်ဖိုးများကို တွက်ချက်ခြင်းဖြင့် R တွင် ဆုတ်ယုတ်မှုပုံစံတွင် ပေါင်းစည်းများပြားမှုကို မည်သို့သိရှိနိုင်ပုံကို ပြသထားသည်။
ဥပမာ- R in multicollinearity အတွက် စမ်းသပ်ခြင်း
ကျွန်ုပ်တို့တွင် အမျိုးမျိုးသော ဘတ်စကတ်ဘောကစားသမားများအကြောင်း အချက်အလက်ပါရှိသော အောက်ပါဒေတာဘောင်ရှိသည်ဆိုပါစို့။
#create data frame df = data. frame (rating = c(90, 85, 82, 88, 94, 90, 76, 75, 87, 86), points=c(25, 20, 14, 16, 27, 20, 12, 15, 14, 19), assists=c(5, 7, 7, 8, 5, 7, 6, 9, 9, 5), rebounds=c(11, 8, 10, 6, 6, 9, 6, 10, 10, 7)) #view data frame df rating points assists rebounds 1 90 25 5 11 2 85 20 7 8 3 82 14 7 10 4 88 16 8 6 5 94 27 5 6 6 90 20 7 9 7 76 12 6 6 8 75 15 9 10 9 87 14 9 10 10 86 19 5 7
ကျွန်ုပ်တို့သည် တုံ့ပြန်မှုကိန်းရှင်နှင့် အမှတ်များ ၊ assists ၊ နှင့် ကြိုတင် ခန့် မှန်းကိန်းရှင်များအဖြစ် အမှတ်ပေးခြင်း ဖြင့် မျိုးစုံသောမျဉ်းကြောင်းဆုတ်ယုတ်မှုပုံစံကို အံဝင်ခွင်ကျဖြစ်စေလိုသည်ဆိုပါစို့။
မော်ဒယ်ရှိ ကြိုတင်တွက်ဆမှုတစ်ခုစီအတွက် VIF ကို တွက်ချက်ရန်၊ ကျွန်ုပ်တို့သည် ကား ပက်ကေ့ခ်ျမှ vive() လုပ်ဆောင်ချက်ကို အသုံးပြုနိုင်ပါသည်။
library (car) #define multiple linear regression model model <- lm(rating ~ points + assists + rebounds, data=df) #calculate the VIF for each predictor variable in the model lively(model) points assists rebounds 1.763977 1.959104 1.175030
ကြိုတင်ခန့်မှန်းကိန်းရှင်တစ်ခုစီအတွက် VIF တန်ဖိုးများကို ကျွန်ုပ်တို့မြင်နိုင်သည်-
- အမှတ်- ၁.၇၆
- ကူညီပေးသည်- 1.96
- ပြန်တက်သည်- ၁.၁၈
မော်ဒယ်ရှိ ခန့်မှန်းသူ ကိန်းရှင်များ၏ VIF တန်ဖိုးများသည် 1 နှင့် နီးစပ်သောကြောင့်၊ multicollinearity သည် မော်ဒယ်အတွက် ပြဿနာမဟုတ်ပါ။
မှတ်ချက် – Multicollinearity သည် သင့်မော်ဒယ်တွင် ပြဿနာတစ်ခုဖြစ်လာပါက၊ ကိစ္စအများစုတွင် အလျင်မြန်ဆုံးဖြေရှင်းချက်မှာ တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော ဆက်စပ်နေသော ကိန်းရှင်များကို ဖယ်ရှားရန်ဖြစ်သည်။
သင်ဖယ်ရှားသည့် ကိန်းရှင်များသည် မလိုအပ်ဘဲ မော်ဒယ်တွင် ထူးခြားသော သို့မဟုတ် အမှီအခိုကင်းသော အချက်အလက်အနည်းငယ်ကို ထည့်ထားသောကြောင့် ၎င်းသည် မကြာခဏ လက်ခံနိုင်သော အဖြေတစ်ခုဖြစ်သည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် R တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
R တွင် linear regression အများအပြားလုပ်ဆောင်နည်း
R တွင် QQ ကွက်ကွက်ဖန်တီးနည်း
R တွင်ကျန်ရှိသောကွက်ကွက်ဖန်တီးနည်း