Python တွင် mcnemar test ကို မည်သို့လုပ်ဆောင်ရမည်နည်း။


McNemar စမ်းသပ်မှုအား တွဲထားသောဒေတာများကြားတွင် ကိန်းဂဏန်းအချက်အလတ်များ သိသာထင်ရှားစွာ ကွာခြားမှုရှိမရှိ ဆုံးဖြတ်ရန် အသုံးပြုပါသည်။

ဤသင်ခန်းစာသည် Python တွင် McNemar စမ်းသပ်မှုကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြထားသည်။

ဥပမာ- Python ရှိ McNemar စမ်းသပ်မှု

အချို့သော စျေးကွက်ရှာဖွေရေး ဗီဒီယိုတစ်ခုသည် ဥပဒေတစ်ခုအပေါ် လူများ၏ ထင်မြင်ယူဆချက်များကို ပြောင်းလဲနိုင်မလားဟု သုတေသီများ သိချင်သည်ဆိုကြပါစို့။ ၎င်းတို့သည် ဥပဒေကို ထောက်ခံခြင်း ရှိ၊ မရှိ သိရှိရန် လူ 100 ကို စစ်တမ်းကောက်ယူခဲ့သည်။ ထို့နောက် ၎င်းတို့သည် လူ 100 တို့အား စျေးကွက်ရှာဖွေရေး ဗီဒီယိုကို ပြသပြီး ဗီဒီယိုပြီးဆုံးပြီးနောက် ၎င်းတို့ကို ထပ်မံ စစ်တမ်းကောက်ယူသည်။

အောက်ဖော်ပြပါဇယားသည် ဗီဒီယိုကိုမကြည့်မီနှင့် အပြီးတွင် ဥပဒေအား ထောက်ခံသူ စုစုပေါင်းအရေအတွက်ကို ပြသသည်-

စျေးကွက်ရှာဖွေရေးမတိုင်မီဗီဒီယို
စျေးကွက်ရှာဖွေရေးပြီးနောက်ဗီဒီယို အထောက်အပံ့ မနေနိုင်
အထောက်အပံ့ ၃၀ ၄၀
မနေနိုင် ၁၂ ၁၈

ဗီဒီယိုကိုမကြည့်မီနှင့် ဗီဒီယိုကြည့်ရှုပြီးနောက် ဥပဒေထောက်ခံသူအချိုးတွင် ကိန်းဂဏန်းသိသိသာသာ ကွာခြားမှုရှိမရှိ ဆုံးဖြတ်ရန်၊ ကျွန်ုပ်တို့သည် McNemar စမ်းသပ်မှုကို လုပ်ဆောင်နိုင်သည်။

အဆင့် 1: ဒေတာကိုဖန်တီးပါ။

ပထမဦးစွာ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏ဒေတာကို ထိန်းသိမ်းရန် ဇယားတစ်ခုကို ဖန်တီးပါမည်။

 data = [[30, 40],
         [12, 18]]

အဆင့် 2: McNemar စမ်းသပ်မှုကို လုပ်ဆောင်ပါ။

ထို့နောက်၊ အောက်ပါ syntax ကိုအသုံးပြုသည့် Python statsmodels စာကြည့်တိုက်မှ mcnemar() လုပ်ဆောင်ချက်ကို အသုံးပြုနိုင်သည်။

mcnemar(အခင်းအကျင်း၊ အတိအကျ=မှန်၊ အမှားပြင်=မှန်)

ရွှေ-

  • ဇယား- စတုရန်းပုံ အရေးပေါ်ဇယား
  • အတိအကျ- အတိအကျမှန်ပါက၊ ထို့နောက် binomial ဖြန့်ဝေခြင်းကို အသုံးပြုပါမည်။ မှန်သည် မှားပါက Chi-square ဖြန့်ဝေမှုကို အသုံးပြုပါမည်။
  • အမှားပြင်ဆင်ခြင်း- မှန်ပါက၊ အဆက်ပြတ်ပြင်ဆင်ခြင်းကို အသုံးပြုသည်။ ပုံမှန်အားဖြင့်၊ ဇယားဆဲလ်အရေအတွက် 5 ထက်နည်းသောအခါတွင် ဤပြင်ဆင်မှုကို အများအားဖြင့် ကျင့်သုံးပါသည်။

အောက်ပါကုဒ်သည် ကျွန်ုပ်တို့၏ သီးခြားဥပမာတွင် ဤလုပ်ဆောင်ချက်ကို အသုံးပြုနည်းကို ပြသသည်-

 from statsmodels.stats.contingency_tables import mcnemar

#McNemar's Test with no continuity correction
print(mcnemar(data, exact=False))

pvalue 0.000181
statistic 14.019

#McNemar's Test with continuity correction
print(mcnemar(data, exact=False, correction=False))

pvalue 0.000103
statistic 15,077

ဖြစ်ရပ်နှစ်ခုစလုံးတွင် – အဆက်မပြတ်ပြင်ဆင်ခြင်းကို အသုံးချသည်ဖြစ်စေ မကျင့်သုံးသည်ဖြစ်စေ – စစ်ဆေးမှု၏ p-value သည် 0.05 ထက်နည်းပါသည်။

ဆိုလိုသည်မှာ ကိစ္စရပ်နှစ်ခုစလုံးတွင် ကျွန်ုပ်တို့သည် အချည်းနှီးသောယူဆချက်အား ပယ်ချပြီး စျေးကွက်ရှာဖွေရေးဗီဒီယိုကိုမကြည့်မီနှင့် ပြီးနောက် ဥပဒေကို ထောက်ခံသူအချိုးအစားမှာ စာရင်းအင်းအရ ကွဲပြားသည်ဟု ကောက်ချက်ချပါသည်။

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

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