資源簡介
用matlab編的Manner-Kendall(M-K)程序非參數檢驗法常用于分析降水、徑流、氣溫等要素時間序列的趨勢變化,其優點在于樣本不需要遵循某一特定的分布,而且很少受到異常值的的干擾,計算簡便。
代碼片段和文件信息
%?Time?Series?Trend?Detection?Tests
%?[?z?sl?lcl?ucl?]?=?trend(?y?dt?)
%?where?z?=?Mann-Kendall?Statistic
%?sl?=?Sen‘s?Slope?Estimate
%?lcl?=?Lower?Confidence?Limit?of?sl
%?ucl?=?Upper?Confidence?Limit?of?sl
%?y?=?Time?Series?of?Data
%?dt?=?Time?Interval?of?Data
%y是待檢測數據序列
%?function?[?z?sl?lcl?ucl?]?=?mk(?y?)
%Data=xlsread(‘C:\Users\Win64\Desktop\分析研究方法\變異診斷\變異診斷程序\MK\shuju.xls‘‘B1:B50‘);
%y=Data(:9);
%y=y(y>0);
Data=xlsread(‘shuju.xls‘);
y=Data(:2);
n?=?length(?y?);
dt=1;
%?calculate?statistic
s?=?0;
for?k?=?1:n-1
????for?j?=?k+1:n
????????s?=?s?+?sign(?y(j)?-?y(k)?);
????end;
end;
%?variance?(?assuming?no?tied?groups?)
v?=?(?n?*?(?n?-?1?)?*?(?2?*?n?+?5?)?)?/?18;
%?test?statistic
if?s?==?0
z?=?0;
elseif?s?>?0
z?=?(?s?-?1?)?/?sqrt(?v?);
else
z?=?(?s?+?1?)?/?sqrt(?v?);
end;?
%?should?calculate?Normal?value?here
nor?=?1.64;
%?results
disp(?[?‘?n?=?‘?num2str(?
- 上一篇:自適應OFDM(malab仿真程序).zip
- 下一篇:圖像質量無參考評價方法源碼
評論
共有 條評論