Создайте кадр данных из вектора чисел в R
Я пытаюсь добыть частые наборы элементов и правила ассоциации из данных, которые находятся в файле.CSV. Узнал о пакете arules в R и решил использовать его.
Возникла проблема с созданием датафрейма из CSV.
Мой файл CSV по существу содержит данные в следующем формате:
transactionid,items
1,"milk,beer,diapers"
2,"coke,milk,eggs"
3,"diapers,eggs,coke"
Может ли кто-нибудь помочь мне с созданием dataframe для передачи его функциям apriori() или elact() библиотеки arules?
Спасибо!
1 ответ
Похоже, вы хотите импортировать данные из CSV-файла в transactions
объект.
df <- read.csv(text='transactionid,items
1,"milk,beer,diapers"
2,"coke,milk,eggs"
3,"diapers,eggs,coke"',
stringsAsFactors=FALSE)
library(arules)
lst <- lapply(df$items,function(x)strsplit(x,split=",")[[1]])
names(lst) <- df$transactionid
trans <- as(lst,"transactions")
inspect(trans)
# items transactionID
# 1 {beer,
# diapers,
# milk} 1
# 2 {coke,
# eggs,
# milk} 2
# 3 {coke,
# diapers,
# eggs} 3
Вы также должны взглянуть на read.transactions(...)
функция.