如何计算数组和矩阵之间的相关系数?

21日视图(30天)
你好,
我有一个矩阵和矩阵B,具有相同的行数和列数不同。我需要计算每一个列之间的相关系数矩阵A的所有列的矩阵的每一列,部分结果将是一个数组,所以我想一个矩阵作为最终结果。
是否有办法避免“for”循环?最有效的方法是什么?你能建议我最好的语法吗?
最后,我也做同样的均方误差:再一次,在第二种情况下,有可能避免“for”循环?
谢谢你的答案。

接受的答案

汤姆巷
汤姆巷 2016年6月24日
如果你有统计和机器学习的工具箱,这听起来像你想要的:
3 > > x = randn(20日);
> > y = x * [1 0; 0 1; 1 1];
> > corr (x, y)
ans =
0.9221 - -0.1434
-0.2979 - 0.8438
0.6825 - 0.5606
我不确定你所说的均方误差。下面添加一些噪声得到z,然后计算系数的预测y z,然后计算y的平方的总和差异,每一列的预测值。这一点你正确的方向吗?
> > z = x + randn(大小(x)) / 100;
> > b
b =
0.9983 - -0.0009
-0.0000 - 0.9964
1.0016 - 1.0049
> >总和((y-yhat) ^ 2)。
ans =
0.0025 - 0.0054
1评论
螺母
螺母 2016年7月1日
非常感谢你,汤姆。相关系数是我需要的。你说什么均方误差也可以帮助我,但是更准确地说我想一个方法来计算每双列之间的两个矩阵。
我想知道如果有一种类似于“相关系数”,得到一个相似矩阵包含每一对的结果,避免“for”循环。
再一次感谢您!

登录置评。

更多的答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!