Я искал подходящий ответ для своей проблемы, но не нашел точного или подходящего ответа.Экспорт большого символа в CSV-файл в R
У меня есть большой вектор символов (около 4 миллионов элементов, размером более 3 ГБ). Я хочу вывести/экспортировать этот вектор большого символа в виде файла CSV, в котором каждый элемент представляет строку.
Экспорт этого файла в write.table
, write.csv
или write.csv2
приводит к проблемам с распределением памяти.
На данный момент я пробовал пакет RSQLite
и функцию fwrite
от data.table
. Оба, похоже, не работают по разным причинам.
- Подход
RQSLite
занял 4 часа, и в итоге мне пришлось его убить. - Функция
fwrite()
запрашиваетdata.frame
в качестве входных данных. Пытаясь принудить вектор большого символа к файлу data.frame, я снова столкнулся с проблемами памяти.
Кто-нибудь знает хороший подход к этой проблеме?
(я на 64-битной машине Windows, 16GB RAM, 500GB SSD и запустить R версии 3.2.5)
Если вы находитесь в Windows, посмотрите на 'memory.size()' – epi99
Что делать, если вы делаете 'x <- list (x); setDT (x) ', а затем использовать' fwrite'? Также проблемы с памятью? –
Я бы сначала попробовал решение @docendodiscimus, и если у вас все еще есть проблемы, вы всегда можете разбить его на более мелкие кусочки, где вы делаете 100 000 элементов одновременно в цикле 'for'. – Benjamin