0

在 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 文件在编辑器中的样子(前 2 行):

citrus fruit,semi-finished bread,margarine,ready soups,,,,,,,,,,,,,,,,,,,,,,,,,,,,
tropical fruit,yogurt,coffee,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

尾随逗号的存在是有原因的……它们表明该行(事务)的项目少于项目最多的事务。但正是这些逗号导致了问题。

如果没有 arules 包认为这些空白是项目,我如何阅读这个 csv 文件?

4

0 回答 0