滑动t检验在matlab上的实现

原理与计算公式

滑动t检验在matlab上的实现

matlab代码

 需要滑动t检验的matlab代码请根据文章最后面的信息联系我。

案例

        以某地区1988-2018年年降水量为例进行突变检测,子序列长度step设为5,则t检验自由度为v=5*2-2=8,查表(https://wenku.baidu.com/view/a2f90a2758fb770bf78a55bf.html)得在0.01水平下t临界值ttest为3.335。运行代码结果如下:

滑动t检验在matlab上的实现

滑动t检验在matlab上的实现 

        结果显示:在子序列长度为5的情况下,检测时间为1992年到2012年,其中2001为突变年份。

        注意:想增加头尾的检测年份数量可减少子序列长度,但子序列长度过小会降低检测效果,一般子序列长度至少取5,可以手动增加子序列长度看哪种检测更符合实际情况。

 

结束语

承接模型、算法代码实现(支持python、matlab、excel vba),比如REOF,有意请联系QQ947943645 ,非诚勿扰!