为什么模型矩阵不一定具有与数据框相同的行数?
mergem = model.matrix(as.formula(paste(response, '~ .')), data=mergef)
dim(mergef)
# [1] 115562 71
dim(mergem)
# [1] 66786 973
我尝试在文档中寻找提示,但找不到任何内容。提前致谢。
最佳答案
好吧,如果一行中有 NA,则该行(默认情况下)将被删除:
d <- data.frame(x=c(1,1,2), y=c(2,2,4), z=c(4,NA,8))
m <- model.matrix(x ~ ., data=d)
nrow(d) # 3
nrow(m) # 2
此行为由选项“na.action”控制:
options(na.action="na.fail")
m <- model.matrix(x ~ ., data=d) # Error: missing values in object
关于r - model.matrix 生成的行数比原始 data.frame 少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6447708/