【发布时间】:2014-03-17 00:06:24
【问题描述】:
我对如何计算矩阵的加权相关性有疑问,从维基百科我创建了以下三个代码
1.加权平均计算
function [y]= weighted_mean(x,w);
n=length(x);
%assume that weight vector and input vector have same length
sum=0.0;
sum_weight=0.0;
for i=1:n
sum=sum+ x(i)*w(i);
sum_weight=sum_weight+w(i);
end
y=sum/sum_weight;
end
2.加权协方差
function result=cov_weighted(x,y,w)
n=length(x);
sum_covar=0.0;
sum_weight=0;
for i=1:n
sum_covar=sum_covar+w(i)*(x(i)-weighted_mean(x,w))*(y(i)-weighted_mean(y,w));
sum_weight=sum_weight+w(i);
end
result=sum_covar/sum_weight;
end
最后是加权相关
3.
function corr_weight=weighted_correlation(x,y,w);
corr_weight=cov_weighted(x,y,w)/sqrt(cov_weighted(x,x,w)*cov_weighted(y,y,w));
end
现在我想对矩阵应用加权相关方法,与此链接相关
我不明白如何申请,这就是为什么我创造了我自己,但在输入的情况下需要矩阵,非常感谢
【问题讨论】:
标签: matlab matrix statistics covariance correlation