爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 15873|回复: 14

[程序设计] Pettitt突变检测

[复制链接]

新浪微博达人勋

发表于 2016-11-7 22:25:50 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 AnneChen 于 2017-9-4 16:48 编辑

最近在研究各种突变检测方法,和大家分享。
如有错误,还请指正。

Pettitt方法是一种与Mann Kendall 法相似的非参数检验方法
%Load data  row=13, col=53
cd H:\Data;
load('NewData.mat');

Data(13,53)=0;
for i=1:13
    Data(i,:)=zscore(NewData(i,:));
end
clear i;

k(13)=0;
P(13)=0;
Y(13)=0;
Max(13)=0;
Year=1750:5:2010;
for index=1:13
    y=Data(index,:);
    n=length(y);
    s(n)=0;
    for i=2:n
        r=0;
        for j=1:i
        r=sign(y(i)-y(j))+r;
        end
        s(i)=r;
    end
    Snew=abs(s);
    Max(index)=max(Snew); % obtaining the maximum value in each row  
    [k]=find(Snew==max(Snew)); % return the location of the maximum value (change point)
    Y(index)=Year(k(1));  % return the year of the change point
    P(index)=2*exp(-6*Max(index)^2/(n^3+n^2));  % if p<=0.05 then this change point is significant
end


密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2021-8-24 17:28:37 | 显示全部楼层
这个是魏凤英老师书里的截图
微信截图_20210824172706.png
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2016-11-7 23:18:22 | 显示全部楼层
本帖最后由 andrewsoong 于 2016-11-7 23:26 编辑

有图么?例如这个
QQ图片20161107232844.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-2-16 16:11:58 | 显示全部楼层
这是matlab还是fortran程序?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-2-16 19:08:56 | 显示全部楼层
阡陌之溪 发表于 2017-2-16 16:11
这是matlab还是fortran程序?

这是 JAVA的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-2-16 21:10:37 | 显示全部楼层
这是matlab程序
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-4-12 15:26:03 | 显示全部楼层
请教楼主一个小问题,为什么p<0.5时认为突变时显著的呢?这个0.5与显著性水平alpha有没有关系?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-19 14:44:37 | 显示全部楼层
谢谢楼主的代码
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-8-18 16:57:04 | 显示全部楼层
感觉计算出来不对
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-8-25 14:58:02 | 显示全部楼层
资料真的不错啊,正需要,感谢分享
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-9-4 17:03:30 | 显示全部楼层
AASSDD 发表于 2017-4-12 15:26
请教楼主一个小问题,为什么p

抱歉,原版有误,现修改如下
P(index)=2*exp(-6*Max(index)^2/(n^3+n^2));  % if p<=0.05 then this change point is significant
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表