Быстрое чтение очень больших таблиц как данных

У меня есть очень большие таблицы (30 миллионов строк), которые я хотел бы загрузить в виде фреймов данных в R.read.table() имеет много удобных функций, но кажется, что в реализации есть много логики, которая замедлит процесс. В моем случае, я предполагаю, что знаю типы столбцов заранее, таблица не содержит заголовков столбцов или имен строк и не имеет патологических символов, о которых мне нужно беспокоиться.

Я знаю, что чтение в таблице в виде списка с помощьюscan() может быть довольно быстрым, например:

datalist <- scan('myfile',sep='\t',list(url='',popularity=0,mintime=0,maxtime=0)))

Но некоторые из моих попыток преобразовать это в фрейм данных, похоже, снижают производительность вышеупомянутого в 6 раз:

df <- as.data.frame(scan('myfile',sep='\t',list(url='',popularity=0,mintime=0,maxtime=0))))

Есть ли лучший способ сделать это? Или, может быть, совершенно другой подход к проблеме?

Ответы на вопрос(8)

Ваш ответ на вопрос