pettitt检验r语言_[原创]Matlab气候突变检测程序合集(更新了)

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

本帖最后由 sfhstcn2 于 2017-10-19 07:29 编辑

mutation_test这是一包代码,是基于《现代气候统计诊断与预测技术》(魏凤英)书中的气候突变检测一章的7种检测方法改写+编写的用于Matlab计算的代码。里面一共有8个function,都可直接调用,正好对应了书中的8种检验方法:

1 Movet  滑动t检验

2 Cramert  克拉默法

3 Yamamoto  山本法

4 MannKendall  M-K法

5 Pettitt  佩蒂特法

6 LePage  勒帕热法

7 BGSA  B-G分割算法

8 wvlt_trans 小波变换法

每个函数的介绍和用法都有精心撰写的详细注释,help 函数名 即可看到,不过由于想让程序更国(zhuang)际(bi)一点,因而注释都写成了英文。导入原序列后,每个程序都能算出用于检验的序列,还能直接画出检验图(当然如果不想画图,只要算出来的序列,可以把程序里面figure前面注释掉的return注释取消)。这里附一张B-G分割算法画的图。用法:下载->解压->放在某个路径下->set path->可以直接调用了。这里补了一个我测试用的序列,比如对于BGSA,导入数据后输入:[ FLAGS ] = BGSA( year,zscore(series),.95,20 );

当然,突变检验远不止这些方法,如果大家还有什么其它好的检验方法可以提在下面,附上链接什么的,有程序当然更好,我争取整合进来,壮大这一包代码。

mutation_test_V2.0修改了之前的一些错误;增进了函数调用的灵活性(可以不必对所有输入的变量赋值,比如对于BGSA,直接[ FLAGS ] = BGSA( series );都行,程序会给这些参数赋上缺省值default。当然,具体设置视情况而定)接下来再来个高级一点的,mutation_test_menu这包增加了一个可以做突变检验的下拉菜单(如图2所示)。设置好路径后,命令窗口输入mt_menu; 就出来了。直接点击操作就可以,很简单。弹出的对话框用于设置各种参数。(注意:在计算画图之前一定要将序列变量名赋成y,对应的时间变量名赋成x!)

你可能感兴趣的:(pettitt检验r语言)