% M-K 趋势检定

clear, close all,clc % clear:清变数 close all:清图面 clc:清画面

% define and assign the full file path using "file open" dialog

[filename filepath]=uigetfile('data1.xls');

full_filepath=[filepath filename];

[X,TXTX,RAWX]=xlsread(full_filepath,1); % 数据全部读入,数据缺失不影响结果

x=X(:,1); % x 时间

y=X(:,2); % y 数据

% 计算 S

n=size(y,1); % 数据个数

S=0;

for i=1:n-1

S = S + sum(sign(y(i+1:n) - y(i))); % S 计算式

end

% 计算 VarS

VarS=n*(n-1)*(2*n+5)/18;

%计算 Z

if S>0

Z=(S-1)/sqrt(VarS);

else

Z=(S+1)/sqrt(VarS);

end

% 计算 Zabs

alpha1=0.05; % 信度 95% 的显著水平

alpha2=0.01; % 信度 99% 的显著水平

PZ1=norminv(1-alpha1/2,0,1);

PZ2=norminv(1-alpha2/2,0,1);

H=0; % 虚无假设

Zabs=abs(Z);

if Zabs >= PZ1

H=1;

else

H=0;

end

P_value=2*(1-normcdf(abs(Z),0,1)); % 若 P_value 比 alpha1 小,则否定虚无假设

% 计算倾斜度

ndash=n*(n -1)/2; % 对称矩阵上半部

slope1= zeros( ndash, 1 ); % 起始归零

m=0;

for k = 1:n-1,

for j = k+1:n,

m=m+1;

slope1(m) = ( y(j) - y(k) ) / (x(j) - x(k) ) ;% 分母非 (j-k)

end;

end;

slope= median( slope1 ); % 中位数

% 历线绘图

yd=max(y)-min(y);

figure

plot(x,y,'b-o','linewidth',1.5);

axis([min(x),max(x),min(y)-0.2*yd,max(y)+0.2*yd]); % 全距外扩 20%

xlabel('时间','FontName','TimesNewRoman','FontSize',12);

ylabel('数据','FontName','TimesNewRoman','Fontsize',12);

title('数据历线图') %添加标题

grid on

output='数据历线图';

saveas(gcf, output, 'jpg')

% M-K 突变检定

Sk=zeros(size(y)); % 起始归零

UFk=zeros(size(y)); % 起始归零

s1=0;

for i=2:n

for j=1:i

if y(i)>y(j)

s1=s1+1;

else

s1=s1+0;

end;

end;

Sk(i)=s1;

E=i*(i-1)/4; % 均值

Var=i*(i-1)*(2*i+5)/72; % 方差

UFk(i)=(Sk(i)-E)/sqrt(Var);

end;

% 起始归零

y2=zeros(size(y));

Sk2=zeros(size(y));

UBk=zeros(size(y));

s2=0;

for i=1:n

y2(i)=y(n-i+1); % 逆序

end;

for i=2:n

for j=1:i

if y2(i)>y2(j)

s2=s2+1;

else

s2=s2+0;

end;

end;

Sk2(i)=s2;

E=i*(i

matlab实现m-k突变的,用matlab进行mk趋势分析与突变检验.pdf相关推荐

  1. matlab计算原点矩,关于用matlab求样本均值方差以及k阶原点矩的matlab程序

    关于用matlab求样本均值方差以及k阶原点矩的matlab 程序 关于用matlab求样本均值和方差以及matlab程 序 1n1. 样本均值,公式xX,(其中X为样本).程序如下: ,i,1in ...

  2. 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补

    数据处理 | MATLAB实现KNN(K近邻)缺失数据填补 目录 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补 基本介绍 插补描述 程序设计 参考资料 基本介绍 用于缺失值插补的单变量方 ...

  3. 聚类分析 | MATLAB实现k-Means(k均值聚类)分析

    目录 聚类分析 | MATLAB实现k-Means(k均值聚类)分析 k-均值聚类简介 相关描述 程序设计 学习小结 参考资料 致谢 聚类分析 | MATLAB实现k-Means(k均值聚类)分析 k ...

  4. matlab单位阶跃序列,产生单位阶跃序列的MATLAB程序如下k.ppt

    产生单位阶跃序列的MATLAB程序如下k 一.实验目的 掌握典型连续信号和离散序列的MATLAB描述方法 掌握序列的常用运算方法 二.实验设备 * * 实验二 基本信号的产生及其运算 信息工程学院 网 ...

  5. Matlab 主成分分析与K均值聚类分析实验报告

    Matlab 主成分分析与K均值聚类分析实验报告 提示:数据资源在本CSDN号的上传资料中直接领取 1 引言 数据:gyzb.mat(按顺序对应每一列)为:31个省市区的国有控股企业的主要指标(包括: ...

  6. matlab数值分析拟合实例,数值分析函数拟合matlab代码.doc

    数值分析函数拟合matlab代码.doc 第一题MATLAB代码用SPLINE作图XI0204060810YI098092081064038X10012Y1NEWTON3XI,YI,X源代码见M文件Y ...

  7. 【 MATLAB 】序列的奇偶分解的 MATLAB 函数编写实践

    序列 x(n)的奇偶分解的公式为: 编写一个序列 x(n) 的奇偶分解式 xe(n) 和 xo(n),需要考虑的问题是序列长度,下标的变化. 这里必须做个声明,下面的程序中用到了前几篇博客中的几个函数 ...

  8. 【 MATLAB 】通过案例学会编写一个 matlab 函数(小猫掉进山洞问题)

    这是关于matlab学习的第一篇博文,我是不愿意承认自己不会MATLAB的,因为这东西大一的时候就学过,如果白驹过隙,都不好意思说自己研几了,科研的过程中MATLAB是必须要会的,于是得系统的看一下了 ...

  9. matlab需要多大运存_提高matlab运行效率

    用过Matlab的人都知道,Matlab是一种解释性语言,存在计算速度慢的问题,为了提高程序的运行效率,matlab提供了多种实用工具及编码技巧. 1. 循环矢量化 Matlab是为矢量和矩阵操作而设 ...

  10. matlab将数据输出到excel中,matlab将数据保存为excel表格-怎样将MATLAB中的数据输出到excel中...

    怎样将MATLAB中的数据输出到excel中? xlswrite()函数可以将matlab中数据保存到excel中,请面例子: >> data = magic(5) % 示例数据 data ...

最新文章

  1. 三年python面试题_300道Python面试题
  2. [SpringBoot2]@MatrixVariableUrlPathHelper
  3. 15 - java 继承
  4. 二级c语言需要知道的知识点,2020年全国计算机二级C语言复习知识点:C语言基本知识(...
  5. object-c 中括号[]
  6. javaScript——原型
  7. Screaming Frog SEO Spider for Mac(网络爬虫软件)v16.0
  8. MathType的使用技巧
  9. MRP存在的七大缺陷,你造吗?
  10. 27家金融类央企(中投+3政策性银行+5国有银行+中信+光大+4保险集团)(4大资产管理+建银+再保险+保险保障+中诚信托+中央国债+银行金融+科技证券+证券基金)
  11. PPT中插入图片背景透明化小技巧
  12. 蓝牙Beacon室内定位全栈
  13. java数据离散化模板
  14. Android音视频开发:AudioRecord录制音频
  15. linux切换桌面的快捷键,SUSE Linux Gnome桌面快捷键整理
  16. 武魂显示无法连接服务器,武魂天下进不去连接服务器失败解决方法
  17. 分销平台传统的宣传流程
  18. fiddler抓包指南(浏览器、app抓包及证书安装)
  19. Susman Godfrey L.L.P.与Hausfeld LLP宣布3.4亿美元诉讼及和解方案,涉及在2007年8月至2010年5月期间持有基于美元LIBOR工具的个人和机构
  20. 【计算机毕设之基于springboot的救灾物资管理系统-哔哩哔哩】 https://b23.tv/jtV9Bib

热门文章

  1. 一张图告诉你,选择企业安全软件真的不难!
  2. busybox的使用
  3. 大型网站架构系列:负载均衡详解
  4. Unbuntu学习笔记之安装vmware tools
  5. WCF分布式安全开发实践(10):消息安全模式之自定义用户名密码:Message_UserNamePassword_WSHttpBinding...
  6. 二维数组绑定到Dropdownlist
  7. MySQL中leftjoin和rightjoin的区别
  8. 【Java与智能设备】用户界面基础
  9. echarts词云第一次出现不了数据要刷新才能出现_隐秘的角落弹幕分析,制作词云,看看观众们对该剧的评价如何...
  10. mysql如何从两个表取出内容_如何从mysql中的两个表中获取数据?