我正在尝试一次从一个文件夹中导入多个CSV,但是CSV没有列名。以下代码有效,但是第一行被转换为列名:
dat <- list.files(pattern="*.csv") %>% lapply(read.csv)
当我尝试使用下面的代码时:
dat <- list.files(pattern="*.csv") %>% lapply(read.csv(header = F))
我收到以下错误消息:
Error in read.table(file = file, header = header, sep = sep, quote = quote, : argument "file" is missing, with no default
知道如何避免这种情况吗?
如果您在tidyverse中,则可能需要
list.files(pattern=".csv") %>%
purrr::map(readr::read_csv, col_names=FALSE)
(注意read.csv
和readr::read_csv
之间默认行为的差异]
该问题来自错误地指定FUN
的附加参数。
? lapply
:
lapply(X, FUN, ...)
...
FUN的可选参数。
您需要对代码进行微小的更改才能使其正常工作:
dat <- list.files(pattern="*.csv") %>% lapply(read.csv, header=F)