2016-09-28 4 views
-1

Я пытаюсь запустить модель правила ассоциации, используя априорный алгоритм в программе R. У меня есть данные в формате txt или в формате CSV. Мои данные обычно выглядят так.Правила ассоциации Формат данных

a, b, c, d, 
e, f, g, h, 
i, j, k, l, 
(etc.) 

Данные обычно считываются в R

read.transactions("Trial.txt") 
transactions in sparse format with 
138 transactions (rows) and 
217 items (columns) 

Однако, когда я пытаюсь запустить априорной алгоритм, я получаю сообщение об ошибке.

> m1 <- apriori("Trial.txt") 
Error in as(data, "transactions") : 
    no method or default for coercing “character” to “transactions” 

Я думаю, что есть проблема с тем, как я вхожу данные в R. Я попытался методы для удаления дубликатов и это не появляется на работе. Как мне ввести эти данные в R для запуска модели?

ответ

0

Смотрите документацию ?apriori: первый аргумент (data), как ожидается, чтобы быть «объектом класса операций или любой структуры данных, которые могут быть принуждены сделки». Вы предоставили вектор символов длины 1, который не может быть принудительно введен в объект транзакции. Вот пример:

writeLines("a,b,c,d 
e,f,g,h 
i,j,k,l", tf <- tempfile()) 
library(arules) 
(trans <- read.transactions(tf, sep=",")) 
# transactions in sparse format with 
# 3 transactions (rows) and 
# 12 items (columns) 
m1 <- apriori(trans, parameter = list(confidence = 1, minlen = 4)) 
head(inspect(m1)) 
#  lhs rhs support confidence lift 
# 1 {a,b,c} => {d} 0.3333333   1 3 
# 2 {a,b,d} => {c} 0.3333333   1 3 
# 3 {a,c,d} => {b} 0.3333333   1 3 
# 4 {b,c,d} => {a} 0.3333333   1 3 
# 5 {e,f,g} => {h} 0.3333333   1 3 
# 6 {e,f,h} => {g} 0.3333333   1 3 
Смежные вопросы