R na.omit - 单个文件与多个文件 - 列出文件与 read.csv?
R na.omit - single vs multiple files - list files vs read.csv?
读取 1 个文件并省略 Na 的:
z <- read.csv(file="C:/data/specdata/002.csv", header=TRUE, sep=",")
newdata <- na.omit(z)
newdata
正常工作,没有显示 NA
s。
读取目录中的多个文件:
files <- list.files(path = "C:/data/specdata/", pattern='^\d+.csv')
lst <- lapply(files, read.csv,header=TRUE)
newdata <- na.omit(lst)
我得到 lst
和 newdata
相同的结果,即 NA
仍然存在。你知道为什么吗?
当您调用 na.omit(lst)
时,na.omit 将尝试忽略列表 lst
中的缺失值。我怀疑你想做的是:
newdata <- lapply(lst,na.omit)
或者,如果 lst
中的 data.frames 都具有相同的结构,您可能希望在调用 na.omit
之前将它们 rbind()
放在一起,如:
newdata <- na.omit(do.call(rbind,lst))
读取 1 个文件并省略 Na 的:
z <- read.csv(file="C:/data/specdata/002.csv", header=TRUE, sep=",")
newdata <- na.omit(z)
newdata
正常工作,没有显示 NA
s。
读取目录中的多个文件:
files <- list.files(path = "C:/data/specdata/", pattern='^\d+.csv')
lst <- lapply(files, read.csv,header=TRUE)
newdata <- na.omit(lst)
我得到 lst
和 newdata
相同的结果,即 NA
仍然存在。你知道为什么吗?
当您调用 na.omit(lst)
时,na.omit 将尝试忽略列表 lst
中的缺失值。我怀疑你想做的是:
newdata <- lapply(lst,na.omit)
或者,如果 lst
中的 data.frames 都具有相同的结构,您可能希望在调用 na.omit
之前将它们 rbind()
放在一起,如:
newdata <- na.omit(do.call(rbind,lst))