ULTRON <- function(directory, pollutant, id = 1:332) {
files_full <- list.files(directory, full.names = TRUE)
dat <- data.frame()
for (i in id) {
dat <- rbind(dat, read.csv(files_full[i]))
}
mean(dat[, pollutant], na.rm = TRUE)
}
有人可以详细解释上面代码中的以下内容
dat <- rbind(dat, read.csv(files_full[i]))
我无法理解rbind中传递的数据帧是如何工作的以及它返回的内容。
答案 0 :(得分:2)
rbind()
函数需要两个(或更多)数据帧并按行连接在一起。换句话说,它将两个数据帧“堆叠”在一起。如果一个数据框的列数多于或少于另一个,则R将不允许该操作发生(尽管请参阅rbind.fill
以获得此方法)。
dat <- rbind(dat, read.csv(files_full[i]))
执行此操作后,dat
将是之前的版本,底部会附加一个新的数据框。此数据框将是从files_full
数组中读取的内容。