Python တွင် mann-kendall trend test ကို မည်သို့လုပ်ဆောင်ရမည်နည်း။
Mann-Kendall trend test ကို time series data မှာ trend ရှိ/မရှိ ဆုံးဖြတ်ဖို့ သုံးပါတယ်။ ဤသည်မှာ ပါရာမက်ထရစ်မဟုတ်သော စမ်းသပ်မှုဖြစ်ပြီး၊ ဆိုလိုသည်မှာ ဒေတာ၏ ပုံမှန်ဖြစ်တည်မှုနှင့် ပတ်သက်၍ နောက်ခံယူဆချက်များ မပြုလုပ်ရပါ။
စမ်းသပ်မှုယူဆချက်မှာ အောက်ပါအတိုင်းဖြစ်သည်။
H 0 (null hypothesis): ဒေတာတွင် လမ်းကြောင်းမရှိပေ။
H A (အစားထိုးယူဆချက်)- လမ်းကြောင်းတစ်ခုသည် ဒေတာတွင် ရှိနေသည်။ (ဒါက အပြုသဘော ဒါမှမဟုတ် အဆိုးမြင်လမ်းကြောင်း ဖြစ်နိုင်ပါတယ်)
အကယ်၍ စမ်းသပ်မှု၏ p-တန်ဖိုးသည် အချို့သော အရေးပါမှုအဆင့်အောက်တွင် ရှိနေပါက (အများအားဖြင့် ရွေးချယ်မှုများမှာ 0.10၊ 0.05 နှင့် 0.01) ဆိုလျှင် အချိန်စီးရီးမှ အချက်အလက်များတွင် လမ်းကြောင်းသစ်တစ်ခု ရှိနေကြောင်း ကိန်းဂဏန်းဆိုင်ရာ သိသာထင်ရှားသော အထောက်အထားများ ရှိပါသည်။
ဤသင်ခန်းစာသည် Python ရှိ Mann-Kendall လမ်းကြောင်းစမ်းသပ်မှုကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြထားသည်။
ဥပမာ- Python ရှိ Mann-Kendall လမ်းကြောင်းစမ်းသပ်မှု
Python ရှိ Mann-Kendall လမ်းကြောင်းစမ်းသပ်မှုကို လုပ်ဆောင်ရန်၊ ကျွန်ုပ်တို့သည် ပထမဆုံး pymannkendall ပက်ကေ့ဂျ်ကို ထည့်သွင်းပါမည်-
pip install pymannkendall
ဤပက်ကေ့ဂျ်ကို ထည့်သွင်းပြီးသည်နှင့်၊ ကျွန်ုပ်တို့သည် အချိန်စီးရီးဒေတာအတွဲတစ်ခုပေါ်တွင် Mann-Kendall လမ်းကြောင်းစမ်းသပ်မှုကို လုပ်ဆောင်နိုင်သည်-
#create dataset data = [31, 29, 28, 28, 27, 26, 26, 27, 27, 27, 28, 29, 30, 29, 30, 29, 28] #perform Mann-Kendall Trend Test import pymannkendall as mk mk. original_test (data) Mann_Kendall_Test(trend='no trend', h=False, p=0.422586268671707, z=0.80194241623, Tau=0.147058823529, s=20.0, var_s=561.33333333, slope=0.0384615384615, intercept=27.692307692)
ဤတွင် စမ်းသပ်မှုရလဒ်ကို မည်သို့အဓိပ္ပာယ်ဖွင့်ဆိုနိုင်သည်-
- trend : ဒါက trend ကိုညွှန်ပြတယ်။ ဖြစ်နိုင်ချေရလဒ်များတွင် တိုးလာခြင်း၊ ကျဆင်းခြင်း သို့မဟုတ် လမ်းကြောင်းသစ်များ ပါဝင်သည်။
- h- လမ်းကြောင်းသစ်ရှိနေပါက မှန်ပါသည်။ လမ်းကြောင်းမရှိလျှင် မှားသည်။
- p: စမ်းသပ်မှု၏ p တန်ဖိုး။
- z- ပုံမှန်စစ်ဆေးခြင်း ကိန်းဂဏန်း။
- Tau: Kendall Tau
- s: မန်း-ကန်ဒယ်လ် ရမှတ်
- var_s: သွေဖည် S
- slope- Theil-Sen/slope ခန့်မှန်းချက်
- ကြားဖြတ်တားဆီးခြင်း- ခိုင်ခံ့သော Kendall-Theil လိုင်းကို ကြားဖြတ်ပေးခြင်း
ကျွန်ုပ်တို့စိတ်ဝင်စားသည့် အဓိကတန်ဖိုးမှာ p-value ဖြစ်ပြီး၊ ဒေတာတွင် စာရင်းအင်းဆိုင်ရာ သိသာထင်ရှားသော လမ်းကြောင်းတစ်ခု ရှိ/မရှိကို ပြောပြသည်။
ဤဥပမာတွင်၊ p-value သည် 0.4226 ဖြစ်ပြီး 0.05 ထက်မနည်းပါ။ ထို့ကြောင့်၊ အချိန်စီးရီးဒေတာတွင် သိသာထင်ရှားသောလမ်းကြောင်းမရှိပါ။
Mann-Kendall လမ်းကြောင်းစမ်းသပ်မှုကို လုပ်ဆောင်ခြင်းအပြင်၊ အမှန်တကယ် အချိန်စီးရီးဒေတာကို မြင်သာစေရန် Matplotlib ကို အသုံးပြု၍ အမြန်မျဉ်းကွက်တစ်ခုကို ဖန်တီးနိုင်သည်-
import matplotlib. pyplot as plt plt. plot (data)
ကြိမ် 
ဇယားမှနေ၍ ဒေတာအနည်းငယ် ပြန့်ကျဲနေကြောင်း ကျွန်ုပ်တို့တွေ့မြင်နိုင်သည်၊ ၎င်းသည် ဒေတာတွင် ရှင်းလင်းပြတ်သားသောလမ်းကြောင်းမရှိကြောင်း အတည်ပြုသည်။
ထပ်လောင်းအရင်းအမြစ်များ
Matplotlib တွင် အချိန်စီးရီးတစ်ခုကို ဘယ်လိုဆွဲမလဲ။
Python တွင် augmented Dickey-Fuller စမ်းသပ်နည်း
Pandas DataFrame မှ စီးရီးများစွာကို ဘယ်လိုဆွဲမလဲ။