#r #csv #disk.frame
Вопрос:
Я пытался работать с дисковым фреймом, чтобы загрузить файл размером около 45 гб. Я использовал приведенный ниже код для преобразования csv во фрейм диска:
output_path = file.path(tempdir(), "tmp_cars.df")
disk <- csv_to_disk.frame("full-drivers.csv", outdir = output_path, overwrite = T, header = T)
Тем не менее, я продолжаю получать:
"Error: cannot allocate vector of size 369.8 MB"
или та же ошибка с 739,5 МБ.
Я попытался загрузить второй, меньший файл csv, чтобы посмотреть, работает ли он, и это получилось. Этот второй файл такой же, как и большой, но только с первыми 1000 строками. Все остальные программы, кроме Rstudio и chrome, закрыты, так как я ищу решения в Интернете. На моем КОМПЬЮТЕРЕ 16 ГБ оперативной памяти, и я не понимаю, почему размер такой маленький. Бег memory.limit()
дает мне 16344.
Есть ли способ загрузить свой первый файл без получения ошибки вектора?
Комментарии:
1. Возможно , используйте другой пакет, например
vroom
, который также считывает файлы данных «по требованию». Он включен в самую последнюю версиюreadr
: readr.tidyverse.org/news2. Я изучу это и посмотрю, поможет ли это. Спасибо за предложение!