MK趋势分析

Mann-Kendall(MK)趋势分析是一种在气象和水文学中广泛使用的非参数方法,它不需要数据遵循正态分布。本文介绍了MK趋势分析的计算原理,包括S值和Var的计算,以及如何计算Z值进行显著性检验。在Python3.6环境下,使用numpy库进行数据处理,通过比较Z值和临界值来判断序列是否存在显著趋势。

MK趋势分析

Mann-Kendall(MK)趋势分析在气象、水文学中已得到广泛应用,该方法不要求变量遵从正太分布,故可以检验水文、气象序列。

计算原理

对于一个时间序列Xt = (x1,x2,…,xn),MK趋势检验的统计量S计算公式如下:
在这里插入图片描述
其中,sgn为检验函数:在这里插入图片描述
然后计算方差Var以及Z统计量:
在这里插入图片描述
利用双边检验对数据进行检验,当-Z1-a<=Zs<=Z1-a时,即表明序列具有显著变化趋势,反之趋势不显著。当Z1-a给定的显著水平a=0.05时,临界值为1.96。

工作环境

Python3.6、numpy

准备工作

首先导入numpy包,并输入数据。
在这里插入图片描述

计算S值及Var

注意索引值和我们平时排列计数时的区别。

s_end = []

for i in range(0,test<
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值