我正在使用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,3L...)有没有人知道该怎么做?
发布于 2013-07-26 00:13:16
我也有同样的问题,我通过删除NA`s来修复它,并检查您的因子级别是否与该因子的标签数量相同!
https://stackoverflow.com/questions/17570753
复制相似问题