2016-12-26 42 views
0

我试图做使用arules包一些市场购物篮分析,但是当我使用summary()功能的itemMatrix对象来检查哪些是最常见的物品,这些数字做不加起来。 如果我做的:汇总交易的()是错误的itemMatrix对象

library(arules) 
x <- read.transactions("Supermarket2014-15.csv") 
summary(x) 

我得到:

transactions as itemMatrix in sparse format with 
5001 rows (elements/itemsets/transactions) and 
997 columns (items) and a density of 0.003557162 

most frequent items:  
45  28  42  35  22 (Other) 
503  462  444  440  413 15474 

但是,如果我有一个for循环检查,甚至在Excel中,该产品45的计数是513而不是503的相同为28,应该是499,依此类推。 奇怪的是,如果我总计所有总数(15474+413+440+444+462+503)我得到的交易产品总数的正确数字。

该数据有多个NA值和产品是因素。

str(x)

这里是原始数据(天的范围从1到28,产品范围从1到50):

Raw Data

+1

实际上,我不确定。我们有没有可能有一个可重复的例子? –

+1

...并且你的数据集中是否有任何“NA”值? –

+1

我也怀疑产品是数字还是因素。如果一个因素,你有“45”和“45”空白? – G5W

回答

0

如果你看看你的str(x)调用的结果那么你会在@iteminfo$labels之下看到有些项目有"1;1"等标签。这表示在读入文件后,项目未正确分离。read.transactions()中的默认分隔符是空格,但是哟你似乎在那里有(一些)分号。尝试sep=";"read.transactions()