r语言 - MCA in FactoMineR



我正在使用FactoMine R绘制MCA图。我有如下数据表:

Met  Aa     Fn      Pg      Pi      Tf      Smut    Ssob    An      Csput
C1  High    N.S.    N.S.    N.S.    High    N.S.    High    High    N.S.
C2  High    N.S.    Low     High    N.S.    N.S.    N.S.    N.S.    N.S.
C4  High    High    N.S.    High    N.S.    N.S.    High    N.S.    High
C6  N.S.    N.S.    High    N.S.    N.S.    N.S.    N.S.    N.S.    High
C9  Low     Low     Low     Low     Low     High    N.S.    Low     Low
C12 N.S.    N.S.    Low     N.S.    N.S.    N.S.    High    N.S.    High
###So I loaded my data
metabolites<-read.csv2('MCA24h_carbon.csv',dec='.')##all metabolites at 24h
###Named the column
metID<-metabolites$met
###Created a new matrix
newmet<-subset(metabolites,select=-c(Met))
### and the number of categories per variable
cats<- apply (newmet, 2, function(x) nlevels(as.factor(x)))

#and this is the output I get from the analysis:
structure(c(85L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 
3L, 3L, 3L, 3L), .Names = c("Var", "Aa", "Fn", "Pg", "Pi", "Tf", 
"Smut", "Ssob", "An", "Csput"))

这是我的第一个红色标志…之后,我进行了MCA,只是想看看我会得到什么,这是代码:

mca1=MCA(metabolites, graph=FALSE)
mca1$eig
mca1$var$coord
mca1$ind$coord
mca1_var_df=data.frame(mca1$var$coord, Variable=rep(names(cats), cats))
mca1_obs_df= data.frame(mca1$ind$coord)

然后我在控制台中得到以下内容:

Error in data.frame(mca1$var$coord, Variable = rep(names(cats), cats)) : 
  arguments imply differing number of rows: 269, 254

我刚开始使用R(如1周内),但我有使用SAS的经验。。。我不知道我做错了什么,也不知道R为什么要把我的数据固定到上面的结构中(3L,3L,3R…)有人知道如何继续吗?

我遇到了同样的问题,我通过删除NA来修复它还要检查您的因子级别是否与该因子的标签数量相同!

最新更新