R中的包Arules:在交易中附加列

Posted

技术标签:

【中文标题】R中的包Arules:在交易中附加列【英文标题】:package Arules in R: with additional column in transactions 【发布时间】:2018-06-19 04:05:57 【问题描述】:

我有一个数据文件记录了交易的type,后跟交易中的项目(basket 格式):

type1 | eggs | chocolate | milk
type2 | milk | bread
type1 | savory | tomato
type3 | chicken

稍后我想删除不同的type 值:

rules = apriori(dataset, parameter = list(support= 0.1, confidence=0.2), appearance = list(none = c("type=type1", "type=type2")

如何读取带有type 列的事务?以下内容不起作用,因为我有 basket 格式的数据。

dataset = read.transactions('data.csv', sep = '|', cols=c("type","Products"))

【问题讨论】:

【参考方案1】:

? read.transactions 的手册页说:

... cols:对于‘single’格式,‘cols’是数字或字符 长度为 2 的向量,给出数字或名称 具有交易和项目 ID 的列(字段), 分别。如果是字符,“文件”的第一行是 假定为带有列名的标题。对于“篮子” 格式,“cols”可以是一个数字标量,给出的数量 具有交易 ID 的列(字段)。如果'cols = NULL',数据不包含交易ID。 ...

所以这应该适用于您的数据:

dataset <- read.transactions('data.csv', sep = '|', cols=1)

【讨论】:

以上是关于R中的包Arules:在交易中附加列的主要内容,如果未能解决你的问题,请参考以下文章

R arules,仅从特定列中挖掘规则

更新并附加到特定列中的所有项目

如何通过 arules R 中的 lhs itemMatrix 对象对规则进行子集化?

使用 R 中的 Apriori 算法预测多个输出

在保留标题的同时附加 2 个数据集

R_Studio(关联)对Groceries数据集进行关联分析