matlab实现m-k突变的,用matlab进行mk趋势分析与突变检验.pdf
% 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相关推荐
- matlab计算原点矩,关于用matlab求样本均值方差以及k阶原点矩的matlab程序
关于用matlab求样本均值方差以及k阶原点矩的matlab 程序 关于用matlab求样本均值和方差以及matlab程 序 1n1. 样本均值,公式xX,(其中X为样本).程序如下: ,i,1in ...
- 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补
数据处理 | MATLAB实现KNN(K近邻)缺失数据填补 目录 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补 基本介绍 插补描述 程序设计 参考资料 基本介绍 用于缺失值插补的单变量方 ...
- 聚类分析 | MATLAB实现k-Means(k均值聚类)分析
目录 聚类分析 | MATLAB实现k-Means(k均值聚类)分析 k-均值聚类简介 相关描述 程序设计 学习小结 参考资料 致谢 聚类分析 | MATLAB实现k-Means(k均值聚类)分析 k ...
- matlab单位阶跃序列,产生单位阶跃序列的MATLAB程序如下k.ppt
产生单位阶跃序列的MATLAB程序如下k 一.实验目的 掌握典型连续信号和离散序列的MATLAB描述方法 掌握序列的常用运算方法 二.实验设备 * * 实验二 基本信号的产生及其运算 信息工程学院 网 ...
- Matlab 主成分分析与K均值聚类分析实验报告
Matlab 主成分分析与K均值聚类分析实验报告 提示:数据资源在本CSDN号的上传资料中直接领取 1 引言 数据:gyzb.mat(按顺序对应每一列)为:31个省市区的国有控股企业的主要指标(包括: ...
- matlab数值分析拟合实例,数值分析函数拟合matlab代码.doc
数值分析函数拟合matlab代码.doc 第一题MATLAB代码用SPLINE作图XI0204060810YI098092081064038X10012Y1NEWTON3XI,YI,X源代码见M文件Y ...
- 【 MATLAB 】序列的奇偶分解的 MATLAB 函数编写实践
序列 x(n)的奇偶分解的公式为: 编写一个序列 x(n) 的奇偶分解式 xe(n) 和 xo(n),需要考虑的问题是序列长度,下标的变化. 这里必须做个声明,下面的程序中用到了前几篇博客中的几个函数 ...
- 【 MATLAB 】通过案例学会编写一个 matlab 函数(小猫掉进山洞问题)
这是关于matlab学习的第一篇博文,我是不愿意承认自己不会MATLAB的,因为这东西大一的时候就学过,如果白驹过隙,都不好意思说自己研几了,科研的过程中MATLAB是必须要会的,于是得系统的看一下了 ...
- matlab需要多大运存_提高matlab运行效率
用过Matlab的人都知道,Matlab是一种解释性语言,存在计算速度慢的问题,为了提高程序的运行效率,matlab提供了多种实用工具及编码技巧. 1. 循环矢量化 Matlab是为矢量和矩阵操作而设 ...
- matlab将数据输出到excel中,matlab将数据保存为excel表格-怎样将MATLAB中的数据输出到excel中...
怎样将MATLAB中的数据输出到excel中? xlswrite()函数可以将matlab中数据保存到excel中,请面例子: >> data = magic(5) % 示例数据 data ...
最新文章
- 三年python面试题_300道Python面试题
- [SpringBoot2]@MatrixVariableUrlPathHelper
- 15 - java 继承
- 二级c语言需要知道的知识点,2020年全国计算机二级C语言复习知识点:C语言基本知识(...
- object-c 中括号[]
- javaScript——原型
- Screaming Frog SEO Spider for Mac(网络爬虫软件)v16.0
- MathType的使用技巧
- MRP存在的七大缺陷,你造吗?
- 27家金融类央企(中投+3政策性银行+5国有银行+中信+光大+4保险集团)(4大资产管理+建银+再保险+保险保障+中诚信托+中央国债+银行金融+科技证券+证券基金)
- PPT中插入图片背景透明化小技巧
- 蓝牙Beacon室内定位全栈
- java数据离散化模板
- Android音视频开发:AudioRecord录制音频
- linux切换桌面的快捷键,SUSE Linux Gnome桌面快捷键整理
- 武魂显示无法连接服务器,武魂天下进不去连接服务器失败解决方法
- 分销平台传统的宣传流程
- fiddler抓包指南(浏览器、app抓包及证书安装)
- Susman Godfrey L.L.P.与Hausfeld LLP宣布3.4亿美元诉讼及和解方案,涉及在2007年8月至2010年5月期间持有基于美元LIBOR工具的个人和机构
- 【计算机毕设之基于springboot的救灾物资管理系统-哔哩哔哩】 https://b23.tv/jtV9Bib
热门文章
- 一张图告诉你,选择企业安全软件真的不难!
- busybox的使用
- 大型网站架构系列:负载均衡详解
- Unbuntu学习笔记之安装vmware tools
- WCF分布式安全开发实践(10):消息安全模式之自定义用户名密码:Message_UserNamePassword_WSHttpBinding...
- 二维数组绑定到Dropdownlist
- MySQL中leftjoin和rightjoin的区别
- 【Java与智能设备】用户界面基础
- echarts词云第一次出现不了数据要刷新才能出现_隐秘的角落弹幕分析,制作词云,看看观众们对该剧的评价如何...
- mysql如何从两个表取出内容_如何从mysql中的两个表中获取数据?