【发布时间】:2018-09-05 02:57:44
【问题描述】:
我正在运行一个 for 循环来动态填充数据框(我知道一只小海豹死在某处,因为我使用了一个 for 循环)
我有这样的想法(5 是返回标量的函数的占位符):
results<-data.frame(matrix(NA, nrow = length(seq(1:10)), ncol =
length(seq(1:10))))
rows<-data.frame(matrix(NA, nrow = 1, ncol = 1))
for (j in seq(1:10)){
rows<-data.frame()
for (i in seq(1:10)){
rows<-cbind(rows,5)
}
results<-cbind(results,rows)
}
我在上面的方法中收到以下错误消息。
Error in match.names(clabs, names(xi)) :
names do not match previous names
有没有更简单的方法?
【问题讨论】:
-
错误信息是什么?
-
您正在覆盖
rows。这是导致错误的原因吗?数据框最后应该是什么样子 - 如果所有 5s 然后执行 data.frame(matrix(5, nrow = 10, ncol = 10))? -
抱歉,忘记了错误信息。
-
5 是返回标量的函数的占位符
-
我故意覆盖行,我只希望该函数填充那一行,将其传递给结果数据框,然后重新开始