我的数据框:
date | weekday | price
2018 | 1 | 25
2018 | 1 | 35
2019 | 2 | 40
我尝试在dplyr下运行此代码:
pi %>%
group_by(date) %>%
group_by(date) %>%
summarise(price = sum(price, na.rm = T)) %>%
select(price, date, weekday) %>%
print()
它不起作用。
有解决方案吗?预先感谢
答案 0 :(得分:0)
按照顺序:选择-> group_by->摘要
df%>%select(price, date, weekday)%>%
group_by(date, weekday)%>%summarise(sum(price,na.rm=T))
答案 1 :(得分:0)
人们正确地建议group_by
日期和工作日,但是如果您有很多专栏,写出来可能会很痛苦。这是我经常用于具有大量列的data.frames的另一种习惯用法:
pi %>%
group_by(date) %>%
mutate(price = sum(price, na.rm = T)) %>%
filter(row_number() == 1)
这将保留每个列变量的所有第一个实例,而不必显式地将它们全部写出。