我正在处理R包arules。我有一个分别命名为6列的csv文件:item1,item2,item3,item4,item5,item6。每个单元格代表一个篮子中的项目,每一行代表整个篮子进行交易。问题是在读取csv文件后:
data <- read.csv('file.csv')
并将其转化为交易:
trans <- as(data, "transactions")
我发现那些空的单元格被认为是名称下的项目,即&#39; itme3 =&#39;。有没有办法指定必须忽略空单元格,还是可以从R事务数据中删除某些项目?
答案 0 :(得分:0)
我不认为你用于trans的代码会起作用。
您可以尝试这样做。以两列格式排列数据。类似于
执行此操作后删除重复的行。在上面的示例中,它将是第2行和第6行。 然后你可以使用包的代码来转置:
#Transposing data to run algorithm
trans1 = split(mydate$product, mydata$user_id,"transactions")
因此,当您运行上面的拆分代码时,结果将是一个对象,而不是一个数据帧。然后你可以继续运行apriori。