2015-06-29 3 views
1

Я пытаюсь запустить apriori из пакета arules и сталкиваюсь с проблемами памяти. Пока я могу читать данные и разделить их на правильный формат для анализа корзины, но когда я пытаюсь преобразовать свои данные в тип транзакции, я получаю ошибку из-за размера (около 800 000 строк).Обработка больших данных для apriori

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

as((split(first2$Product,f = first2$Transaction_Id)),"transactions") 

Я застрял на этом около недели, поэтому любые советы будут высоко оценены.

ответ

0

Это зависит от того, сколько у вас элементов (колонок) и насколько разрежены данные (позиции за транзакцию). Априорная реализация в arules требует, чтобы все транзакции находились в основной памяти. Если вы можете читать данные, но как (данные, «транзакции») терпят неудачу, вы можете попытаться напрямую создать разреженную ngCMatrix из Матрицы пакетов и использовать ее для создания itemMatrix (в основном это транзакции).

См

R> class? ngCMatrix 
R> class? itemMatrix 
R> class? transactions 

К сожалению, это довольно болезненно.

Смежные вопросы