我有一个包含大约10万个订单商品组合的清单,我将它们粘贴到了一列中以便统计每种组合出现的次数。
但是我遇到了这个错误。
我认为这是因为我试图按字母值“分组”。我也尝试过使用类似问题的答案中提到的tapply和recast,但没有成功。如何获取这些组合的计数?以下是一些单独列出的样本项目(再次对格式问题表示歉意)。
4845 Curly Fries California Burger 1
4846 French Fries California Burger 1
4847 Hamburger California Burger 1
4848 $1 Fountain Drinks Curly Fries 1
4849 $1 Fountain Drinks Curly Fries 1
4850 California Burger Curly Fries 1
4851 Curly Fries Curly Fries 1
我已经探索了聚合函数,但是出现了以下错误:
aggregate(t1$count,list(t1$pc), sum) <br>
Error in sort.list(y) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list? <br>
我还尝试了ddply的不同变体:
ddply(t1,t1$pc,transform,occurances=sum(t1$count))
但是我遇到了这个错误。
Error in UseMethod("as.quoted") :
no applicable method for 'as.quoted' applied to an object of class "c('matrix', 'list')"
我认为这是因为我试图按字母值“分组”。我也尝试过使用类似问题的答案中提到的tapply和recast,但没有成功。如何获取这些组合的计数?以下是一些单独列出的样本项目(再次对格式问题表示歉意)。
Var1 Var2 Var3
>2 Onion Rings Onion Rings 1
>3 Pineapple Cheddar Burger Onion Rings 1
>4 Onion Rings Pineapple Cheddar Burger 1
>5 Pineapple Cheddar Burger Pineapple Cheddar Burger 1
>5 Onion Rings Onion Rings 1
>6 Pineapple Cheddar Burger Onion Rings 1
>7 Onion Rings Pineapple Cheddar Burger 1
>8 Pineapple Cheddar Burger Pineapple Cheddar Burger 1
>9 Fountain Soda Fountain Soda 1
>10 French Fries Fountain Soda 1
table
函数来实现:table(t1$pc)
。 - Justin