Cara melakukan tes tren mann-kendall dengan python
Uji tren Mann-Kendall digunakan untuk mengetahui ada atau tidaknya tren pada data deret waktu. Ini adalah uji non-parametrik, artinya tidak ada asumsi mendasar yang dibuat mengenai normalitas data.
Hipotesis pengujiannya adalah sebagai berikut:
H 0 (hipotesis nol): tidak ada tren dalam data.
H A (hipotesis alternatif): Ada tren dalam data. (Ini bisa menjadi tren positif atau negatif)
Jika nilai p pengujian berada di bawah tingkat signifikansi tertentu (pilihan umum adalah 0,10, 0,05, dan 0,01), maka terdapat bukti signifikan secara statistik bahwa terdapat tren dalam data dari rangkaian waktu.
Tutorial ini menjelaskan cara melakukan tes tren Mann-Kendall dengan Python.
Contoh: Uji tren Mann-Kendall dengan Python
Untuk melakukan uji tren Mann-Kendall dengan Python, pertama-tama kita akan menginstal paket pymannkendall :
pip install pymannkendall
Setelah kita menginstal paket ini, kita dapat melakukan uji tren Mann-Kendall pada kumpulan data deret waktu:
#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)
Berikut cara menafsirkan hasil tes:
- trend : Ini menunjukkan tren. Hasil yang mungkin terjadi mencakup tren meningkat, menurun, atau tidak ada tren.
- h: benar jika trennya ada. Salah jika tidak ada tren.
- p: Nilai p tes.
- z: statistik uji normalisasi.
- Tau: Kendall Tau.
- s: Skor Mann-Kendal
- var_s: deviasi S
- kemiringan: Penduga Theil-Sen/kemiringan
- intersepsi: Intersepsi garis kokoh Kendall-Theil
Nilai utama yang kami minati adalah nilai p, yang menunjukkan apakah terdapat tren signifikan secara statistik dalam data.
Dalam contoh ini, nilai p adalah 0,4226 , yang tidak kurang dari 0,05. Oleh karena itu, tidak ada tren yang signifikan pada data deret waktu.
Selain melakukan uji tren Mann-Kendall, kita dapat membuat plot garis cepat menggunakan Matplotlib untuk memvisualisasikan data deret waktu aktual:
import matplotlib. pyplot as plt plt. plot (data)
waktu
Dari grafik tersebut terlihat bahwa datanya agak tersebar, yang menegaskan bahwa tidak ada tren yang jelas pada data tersebut.
Sumber daya tambahan
Cara memplot deret waktu di Matplotlib
Cara melakukan tes Dickey-Fuller augmented dengan Python
Cara memplot beberapa seri dari Pandas DataFrame