| 查看: 636 | 回复: 0 | |||
[求助]
【请教】延时相关分析问题
|
|
各位虫友,大家好! 最近想做两个变量的延时相关分析,请人编了个matlab程序代码,但是感觉结果有些问题,比如,在计算延迟0-12个月的径流与降水量二者的相关系数时,延迟0个月(也就是两个变量同期,不延迟),按理论,同期的径流和降水量的相关系数应该最高,可0个月的延迟相关系数只有0.38,我怀疑是程序的算法有些问题,请高手帮我看看,这个程序到底问题出在哪里,不胜感激! 附程序代码和数据如下 close all; clear all; clc; fid1=fopen('G:\科研工具\Spearman互相关系数\data.txt','r'); data=fscanf(fid1,'%d %f %d %f',[4 inf]); data=data'; fclose(fid1); N=length(data(:,2)); tongji=zeros(13,1); x=zeros(12,1); y=zeros(12,1); indx=0; for i=1:12:N X=data(i:i+11,2); Y=data(i:i+11,4); x=x+X; y=y+Y; indx=indx+1; end x=x/indx; y=y/indx; x=x-mean(x); y=y-mean(y); [c,LAGS]=xcorr(x,y,'coeff'); tongji=tongji+c(11:end); m=0:12; plot(m,c(11:end),'-bo'); hold on; save tongji.mat tongji; fuzhi1=ones(13,1)*0.01; fuzhi2=ones(13,1)*0.05; plot(m,fuzhi1,'--r'); hold on; plot(m,fuzhi2,'-k'); hold on; set(gca,'xtick',0:1:12); xlabel('滞后时间/月'); ylabel('相关系数'); axis([0,12,-1,1]); title('spearman相关系数'); legend('r0.01临界值','r0.05临界值'); A=[m',tongji,fuzhi1,fuzhi2]; fid2=fopen('G:\科研工具\Spearman互相关系数\data_deal.txt','w'); fprintf(fid2,'%d %f %f %f \r\n',A'); fclose(fid2); 原数据网盘下载链接:http://pan.baidu.com/s/1pKFtj7d 其中,第一列和第三列是年月时间,第二列是径流数据,第四列是降水量数据。 |
» 猜你喜欢
存款400万可以在学校里躺平吗
已经有36人回复
英文综述是否需要润色及查重
已经有5人回复
救命帖
已经有5人回复
限项规定
已经有5人回复
为什么nbs上溴 没有产物点出现呢
已经有9人回复
招博士
已经有3人回复
最失望的一年
已经有18人回复
求推荐英文EI期刊
已经有5人回复














回复此楼