我想获得"比例变量"像对象或矢量一样来自" pca $ loadings"下面,在PCA图形中使用其值。
我做了以下事情:
$scope.messages = $rootScope.Messages.Inbox;
$scope.MarkAsRead = function(ID_NR)
{
angular.forEach($rootScope.Messages.Inbox, function (value, key) {
if ((value.IsRead == 2) && (value.From == ID_NR))
{
value.IsRead = 3;
}
});
}
我应该如何获得比例变量?
答案 0 :(得分:0)
另一种方法是手动计算,但首先需要提取所有因子(例如,所有轴)
您应该将nfactors
指定为您拥有的变量数量,在您的示例中为4.所以它应该是这样的:
pca <- principal(iris[1:4],nfactors = 4,rotate="varimax",scores=TRUE)
然后,提取pca$loadings
之后,您可以通过获得每个组件的平方加载总和(在这种情况下为RC)来计算比例方差,并将它们除以总和平方加载,您可以通过这样:
colSums(pca$loadings[ , ]^2)/sum(pca$loadings[ , ]^2)
这应该为您提供与pca$loadings
中的比例差异相同的信息,尽管对于所有组件(在这种情况下为RC1到RC4)。