问题描述
我有一个数据集,在将定性变量重新编码为整数之后,我将其分为训练和测试集。我使用心理软件包进行了PCA分析。
对于训练集,我运行了以下代码:
const hash = crypto
.createHmac('sha256',secretKey)
.update(timestamp + '.' + JSON.stringify(body))
.digest('hex');
它提取了以下成分:
train.scale<-scale(trainagain[,-1:-2])
pcafit<-principal(train.scale,nfactors = 11,rotate="Varimax")
对于测试集,我运行了以下代码:
RC1 RC4 RC3 RC5 RC2 RC6 RC7 RC8 RC9 RC11 RC10
SS loadings 2.44 1.92 1.90 1.72 1.65 1.46 1.40 1.15 1.10 1.01 1.01
Proportion Var 0.10 0.08 0.08 0.07 0.07 0.06 0.06 0.05 0.05 0.04 0.04
Cumulative Var 0.10 0.18 0.26 0.33 0.40 0.46 0.52 0.57 0.61 0.66 0.70
Proportion Explained 0.15 0.11 0.11 0.10 0.10 0.09 0.08 0.07 0.07 0.06 0.06
Cumulative Proportion 0.15 0.26 0.37 0.48 0.58 0.66 0.75 0.81 0.88 0.94 1.00
str(testagain)表明我的数据结构与trainagain相似,所有内容均为整数。但是,对于testagain.scores,其内容均为NaN。
我如何才能“预测”工作?据我所知,我正在关注:
str(testagain)
testagain.scores<-data.frame(predict(pcafit,testagain[,c(-1:-2)]))
来自:
https://www.rdocumentation.org/packages/psych/versions/2.0.7/topics/predict.psych
解决方法
我想我可能会偶然发现该解决方案:删除所有数据中所有数据都完全相同的要素/列之一。