在arules包中,您可以读取交易数据,例如示例杂货数据集:
groceries <- read.transactions("groceries.csv", sep = ",", rm.duplicates=T)
如果您随后检查了您获得的交易:
inspect(groceries[1:3])
items
1 {,
citrus fruit,
margarine,
ready soups,
semi-finished bread}
2 {,
coffee,
tropical fruit,
yogurt}
3 {,
whole milk}
正如您所看到的,它认为每笔交易中的第一项都是空白。它应该是这样的:
items
1 {citrus fruit,
margarine,
ready soups,
semi-finished bread}
2 {coffee,
tropical fruit,
yogurt}
3 {whole milk}
我不确定最新版本的R中是否有某些内容发生了变化,因为使用上述确切代码的示例不会遇到此问题。
这是原始csv文件在编辑器中的样子(前两行):
citrus fruit,semi-finished bread,margarine,ready soups,,,,,,,,,,,,,,,,,,,,,,,,,,,,
tropical fruit,yogurt,coffee,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
尾随逗号是有原因的...它们表明此行(事务)的项目数少于具有最多项目的事务。但正是这些逗号导致了这个问题。
如果没有arules软件包认为这些空白是项目,我怎么能读入这个csv文件?