命令:[r,p]=corrcoef[….]
它还将返回p值,原假设是变量之间不相关。 例: 销售量x 气温y
x = [430 335 520 490 470 210 195 270 400 480];
y=[30 21 35 42 37 20 8 17 35 25];
[r,p]=corrcoef(x,y) r =
1.0000 0.8594 0.8594 1.0000 p =
1.0000 0.0014 0.0014 1.0000
30 21 35 42 37 20 8 17 35 25 430 335 520 490 470 210 195 270 400 480 P矩阵主对角矩阵全为1,
当总体变量X和Y都服从正态分布,并且总体相关系数等于0时,有:
t?rn?21?r2~t(n?2)
P矩阵的计算,即上例中0.0014的算法。
t?rn?21?r2?0.8594?10?21?0.85942?4.7540 (1-tcdf(4.7540,8))*2 得:0.0014
在显著性水平0.05下,0.0014小于0.05,拒绝两总体不相关的原假设,即销售量与气温相关。
命令:[r,p,rlo,rup]=corrcoef(….)
rlo与rup是与r矩阵大小相同的矩阵,rlo为相关系数r的下限,rup为相关系数r的上限。在缺失情况下,置信度为95%。
例:x = [430 335 520 490 470 210 195 270 400 480];
y=[30 21 35 42 37 20 8 17 35 25];
[r,p,rlo,rup]=corrcoef(x,y) r =
1.0000 0.8594 0.8594 1.0000 p =
1.0000 0.0014 0.0014 1.0000 rlo =
1.0000 0.5006 0.5006 1.0000 rup =
1.0000 0.9662 0.9662 1.0000
因此销售量与气温相关系数95%的置信区间为 [0.5006,0.9662]
如果要求99%的销售量与气温相关系数的置信区间: [r,p,rlo,rup]=corrcoef(x,y,'alpha',0.01) 注意不是:[r,p,rlo,rup]=corrcoef(x,y,0.01) r =
1.0000 0.8594 0.8594 1.0000 p =
1.0000 0.0014 0.0014 1.0000 rlo =
1.0000 0.3071 0.3071 1.0000 rup =
1.0000 0.9786 0.9786 1.0000
得销售量与气温相关系数99%的置信区间为
[0.3071,0.9786]比95%的置信区间[0.5006,0.9662] 更宽。
rlo和rup具体怎么算出来的还没弄明白。帮助文件是这样说的:
The confidence bounds are based on an asymptotic normal distribution of 0.5*log((1+R)/(1-R)), with an approximate variance equal to 1/(n-3). 命
令
:
[...]=corrcoef(...,'param1',val1,'param2',val2,...) 例:[...]=corrcoef(...,'alpha',0.01) 是求在置信度为99%,求r置信区间。
[...]=corrcoef(...,'rows', 'all') 只计算两个变量(两
列)所有观察值(所有行)都存在的两个变量。缺失情况下,就是用这种方法计算。 例:
x =[ 3 9 2 34 5 NaN 6 66 NaN 4 9 7 8 7 33 9 9 14 11 22]
[r,p,rlo,rup]=corrcoef(x,'rows', 'all') r =
NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 1.0000 -0.5296 NaN NaN -0.5296 1.0000 p =
NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 1.0000 0.3587 NaN NaN 0.3587 1.0000 rlo =
NaN NaN NaN NaN NaN NaN NaN NaN
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《非参数统计》与MATLAB编程 第八章 相关分析(2)在线全文阅读。
相关推荐: