R 按组聚合行\u按条件
如果可能的话,我想在dplyr中解决这个问题 我有一个数据框:R 按组聚合行\u按条件,r,dplyr,R,Dplyr,如果可能的话,我想在dplyr中解决这个问题 我有一个数据框: Item Count Bike Tire 15 Car Tire 6 H. Window 3 S. Windows 7 Spare Tires 1 Widget X 88 Widget Z 34 ... 我希望获得要聚合到的数据帧: Item Count Tires 22 H. Window 3 S. Windows 7 Widget X 88
Item Count
Bike Tire 15
Car Tire 6
H. Window 3
S. Windows 7
Spare Tires 1
Widget X 88
Widget Z 34
...
我希望获得要聚合到的数据帧:
Item Count
Tires 22
H. Window 3
S. Windows 7
Widget X 88
Widget Z 34
...
我得到了这个far-filterdata,greplglob2rx*tire*,data$Item,ignore.case=TRUE,这样我就可以看到哪些行会匹配,但是我如何才能对_进行分组,以便在示例中聚合数据?我可能也会对其他项目执行相同的操作,但只想先了解基本情况。这里有一个选项,可以将组中具有“tire”子字符串的“Item”替换为“Tires”,并获得“Count”的总和
library(dplyr)
df1 %>%
group_by(Item = replace(Item, grepl("Tire", Item), "Tires")) %>%
summarise(Count = sum(Count))
# A tibble: 5 x 2
# Item Count
# <chr> <int>
#1 H. Window 3
#2 S. Windows 7
#3 Tires 22
#4 Widget X 88
#5 Widget Z 34
这里有一个选项可以将组_by中具有“tire”子字符串的“Item”替换为“Tires”,并获得“Count”的总和
library(dplyr)
df1 %>%
group_by(Item = replace(Item, grepl("Tire", Item), "Tires")) %>%
summarise(Count = sum(Count))
# A tibble: 5 x 2
# Item Count
# <chr> <int>
#1 H. Window 3
#2 S. Windows 7
#3 Tires 22
#4 Widget X 88
#5 Widget Z 34
“你是说轮胎吗?”肖恩:对不起,是轮胎。UpdatedSo最终会首先进行替换,此时group_by实际上只是一个显式的group by=项。您还可以在group by之外进行替换,只保留group_byItem。这很有意思。@Shawn是的,你可以在变异中做,然后做分组,但我想我会取消一步你是说轮胎吗?@Shawn抱歉,是轮胎。UpdatedSo最终会首先进行替换,此时group_by实际上只是一个显式的group by=项。您还可以在group by之外进行替换,只保留group_byItem。这很有趣。@Shawn是的,你可以在变异中做,然后做分组,但我想我会消除一个步骤