header = FALSE не работает при импорте нескольких CSV одновременно - PullRequest
2 голосов
/ 28 сентября 2019

Я пытаюсь импортировать несколько CSV из папки одновременно, но у CSV нет имен столбцов.Следующий код работает, но первая строка преобразуется в имена столбцов:

dat <- list.files(pattern="*.csv") %>% lapply(read.csv)

Когда я пытаюсь использовать приведенный ниже код:

dat <- list.files(pattern="*.csv") %>% lapply(read.csv(header = FALSE))

Я получаю следующее сообщение об ошибке:

Ошибка в read.table (file = file, header = header, sep = sep, quote = quote,: аргумент "file" отсутствует, по умолчанию нет

Есть идеи, как мне этого избежать?

Ответы [ 2 ]

4 голосов
/ 29 сентября 2019

Проблема заключается в неправильном указании дополнительных параметров для FUN.

? lapply:

lapply(X, FUN, ...)

... необязательные аргументыFUN.

Вам нужно внести небольшие изменения в свой код, чтобы он заработал:

dat <- list.files(pattern="*.csv") %>% lapply(read.csv, header=FALSE)
1 голос
/ 29 сентября 2019

Если вы находитесь в точке перехода, вы можете захотеть

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

(обратите внимание на различия в поведении по умолчанию между read.csv и readr::read_csv)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...