【发布时间】:2021-11-01 00:44:20
【问题描述】:
我的数据如下:
dataset = list()
a <- c(1,2,3)
b <- c(1,2,3)
country <- c("A","B","C")
source_country <- c("D","D","D")
dataset[[1]] <- data.frame(a,b,country, source_country)
a <- c(NA)
b <- c(NA)
country <- c(NA)
source_country <- c(NA)
dataset[[2]] <- data.frame(a,b,country, source_country)
我想用 source_country 从同一列表项的数据框中重命名每个列表项。我尝试了以下方法:
for (i in 1:length(dataset)) {
if (!is.null(dataset[[i]])) {
print ("no data")
} else if (nrow(dataset[[i]]) > 1) {
names(dataset)[i] <- dataset[[i]][["source_country"]][[1]]
}
}
但它似乎不起作用..
期望的结果:
names(dataset)[1] <- "D"
names(dataset)[2] <- "NA"
【问题讨论】: