Python တွင် breusch-pagan စမ်းသပ်မှုပြုလုပ်နည်း
ဆုတ်ယုတ်မှု ခွဲခြမ်းစိတ်ဖြာမှုတွင်၊ heteroskedasticity သည် အကြွင်းအကျန်များ မညီမညာ ကွဲထွက်သွားခြင်းကို ရည်ညွှန်းသည်။ ပို၍တိကျသည်မှာ၊ ဤသည်မှာ တိုင်းတာထားသောတန်ဖိုးများ၏ အကွာအဝေးထက် အကြွင်းအကျန်များ ဖြန့်ဖြူးရာတွင် စနစ်တကျ အပြောင်းအလဲရှိနေသည့် ကိစ္စဖြစ်သည်။
Heteroscedasticity သည် သာမာန်အနည်းဆုံးစတုရန်းပုံများ (OLS) ဆုတ်ယုတ်မှု သည် ကျန်အကြွင်းအကျန်များသည် မျိုးတူရိုးကျ ဖြစ်သော လူဦးရေမှ ဆင်းသက်လာသည်ဟု ယူဆသောကြောင့်၊ အဆက်မပြတ်ကွဲလွဲမှုဟု ဆိုလိုပါသည်။
ဆုတ်ယုတ်မှု ခွဲခြမ်းစိတ်ဖြာမှုတွင် မျိုးကွဲကွဲပြားမှု ရှိနေသောအခါ၊ ခွဲခြမ်းစိတ်ဖြာမှု၏ ရလဒ်များသည် ယုံကြည်ရန် ခက်ခဲလာသည်။
ဆုတ်ယုတ်မှုခွဲခြမ်းစိတ်ဖြာမှုတွင် heteroskedasticity ရှိမရှိဆုံးဖြတ်ရန်နည်းလမ်းတစ်ခုမှာ Breusch-Pagan စမ်းသပ်မှုကို အသုံးပြုခြင်းဖြစ်သည် ။
ဤသင်ခန်းစာတွင် Python ရှိ Breusch-Pagan စမ်းသပ်နည်းကို ရှင်းပြထားသည်။
ဥပမာ- Python ရှိ Breusch-Pagan စမ်းသပ်မှု
ဤဥပမာအတွက်၊ ကျွန်ုပ်တို့သည် ဘတ်စကက်ဘောကစားသမား 10 ဦး၏ အရည်အချင်းများကို ဖော်ပြသည့် အောက်ပါဒေတာအတွဲကို အသုံးပြုပါမည်-
import numpy as np import pandas as pd #create dataset df = pd.DataFrame({'rating': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86], 'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebounds': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]}) #view dataset df rating points assists rebounds 0 90 25 5 11 1 85 20 7 8 2 82 14 7 10 3 88 16 8 6 4 94 27 5 6 5 90 20 7 9 6 76 12 6 6 7 75 15 9 10 8 87 14 9 10 9 86 19 5 7
ကျွန်ုပ်တို့သည် တုံ့ပြန်မှုကိန်းရှင်နှင့် အမှတ်များအဖြစ် အမှတ်ပေးခြင်း၊ ကူညီပေးခြင်းနှင့် ပြန်လည်တုံ့ပြန်ခြင်းများကို ရှင်းပြထားသောကိန်းရှင်များအဖြစ် အမှတ်ပေးခြင်းဖြင့် မျိုးစုံသောမျဉ်းကြောင်းဆုတ်ယုတ်မှုပုံစံကို အံကိုက်လုပ်ပါမည်။ ထို့နောက်၊ ကျွန်ုပ်တို့သည် ဆုတ်ယုတ်ခြင်းတွင် heteroskedasticity ရှိနေခြင်းရှိမရှိ ဆုံးဖြတ်ရန် Breusch-Pagan စမ်းသပ်မှုကို လုပ်ဆောင်ပါမည်။
အဆင့် 1- မျဉ်းဖြောင့် ဆုတ်ယုတ်မှု ပုံစံမျိုးစုံကို ကိုက်ညီပါ။
ပထမဦးစွာ၊ ကျွန်ုပ်တို့သည် multiple linear regression model ကို ကိုက်ညီပါမည်-
import statsmodels.formula.api as smf #fit regression model fit = smf.ols('rating ~ points+assists+rebounds', data=df). fit () #view model summary print (fit.summary())
အဆင့် 2- Breusch-Pagan စမ်းသပ်မှုပြုလုပ်ပါ။
ထို့နောက်၊ ကျွန်ုပ်တို့သည် မျိုးရိုးလိုက်ခြင်းရှိမရှိ ဆုံးဖြတ်ရန် Breusch-Pagan စမ်းသပ်မှုကို လုပ်ဆောင်ပါမည်။
from statsmodels.compat import lzip import statsmodels.stats.api as sms #perform Bresuch-Pagan test names = ['Lagrange multiplier statistic', 'p-value', 'f-value', 'f p-value'] test = sms.het_breuschpagan(fit.resid, fit.model.exog) lzip(names, test) [('Lagrange multiply statistic', 6.003951995818433), ('p-value', 0.11141811013399583), ('f-value', 3.004944880309618), ('f p-value', 0.11663863538255281)]
Breusch-Pagan စမ်းသပ်မှုတစ်ခုသည် အောက်ပါ null နှင့် အခြားအခြားသော အယူအဆများကို အသုံးပြုသည်-
null hypothesis (H 0 ): Homoscedasticity ရှိနေသည်။
အစားထိုးယူဆချက်- (ဟာ)- မျိုးရိုးဗီဇရှိခြင်း မရှိပါ (ဆိုလိုသည်မှာ မျိုးရိုးလိုက်ခြင်းရှိခြင်း)၊
ဤဥပမာတွင်၊ စမ်းသပ်မှုအတွက် Lagrange မြှောက်ကိန်းကိန်းဂဏန်းသည် 6.004 ဖြစ်ပြီး သက်ဆိုင်ရာ p-တန်ဖိုးသည် 0.1114 ဖြစ်သည်။ ဤ p-value သည် 0.05 ထက်မနည်းသောကြောင့်၊ null hypothesis ကို ငြင်းပယ်ရန် ပျက်ကွက်ပါသည်။ ဆုတ်ယုတ်မှုပုံစံတွင် မျိုးရိုးလိုက်ခြင်းမျိုး ရှိနေကြောင်း အခိုင်အမာဆိုရန် လုံလောက်သော အထောက်အထား မရှိပါ။
Heteroscedasticity ကို ဘယ်လိုပြင်မလဲ။
ယခင်ဥပမာတွင်၊ regression model တွင် heteroscedasticity မပါရှိကြောင်း ကျွန်ုပ်တို့တွေ့ခဲ့ရသည်။
သို့သော်၊ မျိုးကွဲအမှန်တကယ်ရှိနေသောအခါ၊ အခြေအနေကို ကုစားရန် ဘုံနည်းလမ်းသုံးမျိုးရှိသည်။
1. မှီခိုသော ကိန်းရှင်ကို ပြောင်းလဲပါ။ heteroskedasticity အတွက် ပြုပြင်ရန် နည်းလမ်းတစ်ခုမှာ မှီခို variable ကို တစ်နည်းနည်းဖြင့် ပြောင်းလဲရန် ဖြစ်သည်။ ယေဘူယျအသွင်ပြောင်းခြင်းသည် မှီခိုကိန်းရှင်၏ မှတ်တမ်းကို ရိုးရိုးရှင်းရှင်းယူရန်ဖြစ်သည်။
2. မှီခိုသောကိန်းရှင်ကို ပြန်လည်သတ်မှတ်ပါ။ heteroscedasticity ကို ပြုပြင်ရန် အခြားနည်းလမ်းမှာ မှီခိုကိန်းရှင်ကို ပြန်လည်သတ်မှတ်ရန်ဖြစ်သည်။ ၎င်းကိုပြုလုပ်ရန် ဘုံနည်းလမ်းမှာ ကုန်ကြမ်းတန်ဖိုးထက် မှီခိုကိန်းရှင်အတွက် နှုန်းထားကို အသုံးပြုခြင်းဖြစ်သည်။
3. အလေးချိန် ဆုတ်ယုတ်မှုကို သုံးပါ။ မျိုးရိုးလိုက်ခြင်းအတွက် ပြုပြင်ရန် နောက်တစ်နည်းမှာ အလေးချိန် ဆုတ်ယုတ်မှုကို အသုံးပြုခြင်း ဖြစ်သည်။ ဤဆုတ်ယုတ်မှုအမျိုးအစားသည် ၎င်း၏တပ်ဆင်ထားသောတန်ဖိုး၏ကွဲလွဲမှုအပေါ်အခြေခံ၍ ဒေတာအမှတ်တစ်ခုစီအား အလေးချိန်တစ်ခုစီပေးသည်။ သင့်လျော်သောအလေးချိန်များကိုအသုံးပြုသောအခါ၊ ၎င်းသည် မျိုးကွဲခြင်းပြဿနာကို ဖယ်ရှားပေးနိုင်သည်။
ဤဆောင်းပါးတွင် ဤနည်းလမ်းသုံးမျိုးအနက် တစ်ခုစီအကြောင်း အသေးစိတ်ကို ဆက်လက်ဖတ်ရှုပါ။