1
我在美国有1000个观测站,为此我需要得到尺寸为1000x1000的互相关矩阵。我可以通过做矩阵的空间互相关字段
[corelMat,pval] = corr([A1 A2 .... A1000],'type','kendall')
不过,我希望把零的互相关矩阵的元素,其中的p值小于0.001这么做。
我该如何在MATLAB中完成这项工作?
我在美国有1000个观测站,为此我需要得到尺寸为1000x1000的互相关矩阵。我可以通过做矩阵的空间互相关字段
[corelMat,pval] = corr([A1 A2 .... A1000],'type','kendall')
不过,我希望把零的互相关矩阵的元素,其中的p值小于0.001这么做。
我该如何在MATLAB中完成这项工作?
只需搜索pval
中小于0.001的值,然后使用它索引到corelMat
并将这些值设置为零。作为这样:
corelMat(pval < 0.001) = 0;
pval < 0.001
生成其中true
表示那些p值是小于0.001和false
否则逻辑矩阵。通过提供与corelMat
大小相同的逻辑矩阵作为corelMat
的参数,您只需更改corelMat
中true
与pval
之间的相应位置。一旦找到这些位置,您将corelMat
中的值更改为0.
希望这有助于您!