首页 > 解决方案 > 如何将数据添加到 R 中现有的空白数据框?

问题描述

我创建了一个包含 9 列的空白数据框,并希望我的 forloop 将数据添加到这个空白 df,但每当我尝试运行它时都会收到错误消息:

temp$age<- age

错误如下:“ $<-.data.frame( *tmp*, age, value = 1:20) 中的错误:替换有20行,数据有0”

请让我知道这是否可能。

标签: rdataframe

解决方案


R 的数据帧是矢量化的,可以将其视为多个矢量,当在数据帧中时,它们是所述数据帧的列。这意味着数据框中的不同向量(列)必须具有相同的长度。

所以这不起作用:

df <- data.frame(V1 = NA)
df$age <- 1:20
 
Error in `$<-.data.frame`(`*tmp*`, age, value = 1:20) : 
  replacement has 20 rows, data has 1

但这将:

df <- data.frame(V1 = rep(NA,20))
df$age <- 1:20

希望这可以解决您的问题!


推荐阅读