R-在数据范围列表中将NAS转换为0



我知道这是以前问的,但是答案总是太具体了。我也有些新鲜。

我有一个列表WaFrames,共180个数据帧。我需要影响他们所有人,因为手动花费太长了。

基本df[is.na(df)] <- 0在一个帧上工作正常,但是当我试图使其在列表中的每个帧中工作时,我都会陷入困境。我已经尝试了所有lapply方法,并尝试了循环。我很难过。

也可以使我能够一次对所有帧进行其他扫描更改。

预先感谢!

您可以做这样的事情:

x <- dplyr::data_frame(a = c(NA, 1, 2, NA),
                       b = c(1, 2, NA, 3))
y <- dplyr::data_frame(a = c(NA, 3, 4, NA),
                       b = c(1, 2, NA, 3))
listy <- list(x, y)
func <- function(df){
  df[is.na(df)] <- 0
}
purrr::map(listy, function(x) replace(x, is.na(x), 0))

最新更新