在"Zero frequent items" when using the eclat to mine frequent itemsets中,OP对分组/聚类感兴趣,这取决于它们在一起订购的频率。可以通过arules::inspect
函数检查此分组。
library(arules)
dataset <- read.transactions("8GbjnHK2.txt", sep = ";", rm.duplicates = TRUE)
f <- eclat(dataset,
parameter = list(
supp = 0.001,
maxlen = 17,
tidLists = TRUE))
inspect(head(sort(f, by = "support"), 10))
可以从https://pastebin.com/8GbjnHK2下载数据集。
但是,输出不能轻易地作为数据框保存到另一个对象。
out <- inspect(f)
那么我们如何捕获inspect(f)
的输出以用作数据框?
答案 0 :(得分:1)
我们可以使用方法labels
来提取关联/分组,并使用quality
来提取质量度量(支持和计数)。然后,我们可以使用cbind
将这些存储到数据框中。
out <- cbind(labels = labels(f), quality(f))
head(out)
# labels support count
# 1 {3031093,3059242} 0.001010 16
# 2 {3031096,3059242} 0.001073 17
# 3 {3060614,3060615} 0.001010 16
# 4 {3022540,3072091} 0.001010 16
# 5 {3061698,3061700} 0.001073 17
# 6 {3031087,3059242} 0.002778 44
答案 1 :(得分:0)
将项目集强制到data.frame还可以创建所需的输出。
> head(as(f, "data.frame"))
items support count
1 {3031093,3059242} 0.001010101 16
2 {3031096,3059242} 0.001073232 17
3 {3060614,3060615} 0.001010101 16
4 {3022540,3072091} 0.001010101 16
5 {3061698,3061700} 0.001073232 17
6 {3031087,3059242} 0.002777778 44