【发布时间】:2022-01-14 04:31:22
【问题描述】:
我有以下设置
df_names <- c("df1", "df2", "df3")
df1 <- tibble("1" = "hallo")
df2 <- tibble("1" = "hallo")
df3 <- tibble("1" = "hallo")
missing_columns <- c("2", "3")
我的目标是向每个数据框添加在 missing_columns 中看到的列。
我试过了
for(i in df_names){
for(j in missing_columns){
get(i)[, j] <- ""
}
}
Error in get(i) <- `*vtmp*` : could not find function "get<-"
和
for(i in df_names){
for(j in missing_columns){
assign(get(i)[, j], "")
}
}
Error: Can't subset columns that don't exist.
x Column `2` doesn't exist.
当然第 2 列不存在,这就是我要添加它的原因。
【问题讨论】:
-
随便
df1[["2"]] <- "foo" -
这对我不起作用,因为我正在写要添加的列和数据帧数量不同的东西。这就是为什么我有一个数据框名称的向量和一个缺失列的向量。这就是为什么我认为使用 for 循环可能是正确的选择。