CSV на дисковый фрейм с несколькими CSV
Я получаю эту ошибку при попытке импортировать CSV с помощью этого кода:
some.df = csv_to_disk.frame(list.files("some/path"))
Ошибка в split_every_nlines(name_in = normalizePath(file, mustWork = TRUE),: Ожидается одно строковое значение: [type=character; sizes =3].
У меня есть временное решение с циклом for, который повторяется по каждому из файлов, а затем я объединяю все фреймы диска вместе.
Я вытащил код из документа о приеме данных
1 ответ
Кажется, это ошибка, вызванная
bigreadr
пакет. Интересно, есть ли у вас способ воспроизвести куски.
Или, может быть, попробуйте другой читатель фрагментов,
csv_to_disk.frame(..., chunk_reader ="data.table")
Кроме того, если все не удается (поскольку чтение CSV затруднено), чтение их в цикле, а затем добавление также будет работать.
Возможно, вам нужно указать только чтение CSV? нравиться
list.files("some/path", pattern=".csv", full.names=TRUE)
В остальном нормально работает,
library(disk.frame)
tmp = tempdir()
sapply(1:10, function(x) {
data.table::fwrite(nycflights13::flights, file.path(tmp, sprintf("tmp%s.csv", x)))
})
library(disk.frame)
setup_disk.frame()
some.df = csv_to_disk.frame(list.files(tmp, pattern = "*.csv", full.names = TRUE))