一次导入多个CSV时标题为假,不起作用

问题描述 投票:0回答:2

我正在尝试一次从一个文件夹中导入多个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

知道如何避免这种情况吗?

r
2个回答
1
投票

如果您在tidyverse中,则可能需要

list.files(pattern=".csv") %>%
   purrr::map(readr::read_csv, col_names=FALSE)

(注意read.csvreadr::read_csv之间默认行为的差异]


1
投票

该问题来自错误地指定FUN的附加参数。

? lapply

lapply(X, FUN, ...)

... FUN的可选参数。

您需要对代码进行微小的更改才能使其正常工作:

dat <- list.files(pattern="*.csv") %>% lapply(read.csv, header=F)
© www.soinside.com 2019 - 2024. All rights reserved.