我试图过滤掉R中不需要的多行数据,但我不知道如何去做。根据多行中的值过滤R中的行
我使用的数据看起来有点像这样:
Category Item Shop1 Shop2 Shop3
1 Fruit Apples 4 6 0
2 Fruit Oranges 0 2 7
3 Veg Potatoes 0 0 0
4 Veg Onions 0 0 0
5 Veg Carrots 0 0 0
6 Dairy Yoghurt 0 0 0
7 Dairy Milk 0 1 0
8 Dairy Cheese 0 0 0
我只是想保持大类,其中至少一个项目拥有的商店至少一个正值。
在这种情况下,我想摆脱所有Veg
行,因为没有任何商店销售任何蔬菜。我希望将所有的Fruit
行,我想保持所有的Dairy
行,即使是那些在所有店铺零值,因为Dairy
行之一确实有大于0
我的值试图在使用group_by(Category)
之后试图使用colSums
,希望它每次都能将类别的内容相加,但它不起作用。我也尝试在rowSums的最后添加一列,并根据频率进行过滤,但我只能以这种方式过滤单个行,而不是基于整个类别的行。
虽然我可以过滤出零值的单行(例如第3行),但我的难处在于像第6行和第8行那样行,其中每个商店的所有值都为零,但我想保留这些行因为其他Dairy
行的值大于零。
这很棒:feed'ave '作为第一个参数的逻辑向量,那么最终的输出可以直接用于子集化。 – lmo
哇,谢谢你的多种解决方案和清晰的解释! – Rose