У меня 12 файлов (по одному на каждый месяц года), каждый файл содержит более 6 миллионов регистров с данными о продажах. Мне нужно свернуть каждый файл только в один регистр с общей суммой столбцов.
Я написал следующий код для января и работает,
jan18 <- read.delim("C:/Documents/invoices_201801.txt") %>%
mutate(dt = ymd(date)) %>%
mutate(month=month(dt)) %>%
group_by(DOCUMENT) %>%
summarise(BASE_GRAVADA = mean(BASE_GRAVADA), BASE_TARIFA_0 = mean(BASE_TARIFA_0), BASE_EXCENTA = mean(BASE_EXCENTA),
BASE_NO_OBJETO= mean(BASE_NO_OBJETO), MONTO_IVA = mean(MONTO_IVA), VALOR_RETENCION_IVA = mean(VALOR_RETENCION_IVA),
TOTAL_SIN_IMPUESTOS = mean(TOTAL_SIN_IMPUESTOS), IMPORTE_TOTAL = mean(IMPORTE_TOTAL),mes=mean(mes)) %>%
group_by(month) %>%
summarise(BASE_GRAVADA = sum(BASE_GRAVADA), BASE_TARIFA_0 = sum(BASE_TARIFA_0), BASE_EXCENTA = sum(BASE_EXCENTA),
BASE_NO_OBJETO= sum(BASE_NO_OBJETO), MONTO_IVA = sum(MONTO_IVA), VALOR_RETENCION_IVA = sum(VALOR_RETENCION_IVA),
TOTAL_SIN_IMPUESTOS = sum(TOTAL_SIN_IMPUESTOS), IMPORTE_TOTAL = sum(IMPORTE_TOTAL))
, но когда я хочу запустить тот же Код на следующие месяцы есть сообщение об ошибке:
Error in scan(file = file, what = what, sep = sep, quote = quote, dec = dec, :
could not allocate memory (2048 Mb) in C function 'R_AllocStringBuffer'
Можете ли вы дать мне некоторую помощь с советами, чтобы избежать этой проблемы memory ? Я попытался с помощью g c () и настроил ограничение памяти, но получаю то же сообщение об ошибке.