如何使用 R 中的 dyplr 包聚合数据
How to aggregate data with the dyplr package in R
我想了解如何使用 dplyr 包编写以下代码:
averageStepsDayType <- aggregate(
NAreplacement$steps,
by=list(interval=NAreplacement$interval, dayType=NAreplacement$dayType),
mean
)
这是原始数据框:
> head(NAreplacement)
steps date interval dayType
1 1.7169811 2012-10-01 0 weekday
2 0.3396226 2012-10-01 5 weekday
3 0.1320755 2012-10-01 10 weekday
4 0.1509434 2012-10-01 15 weekday
5 0.0754717 2012-10-01 20 weekday
6 2.0943396 2012-10-01 25 weekday
这是使用上述代码获得的所需输出:
> head(averageStepsDayType)
interval dayType x
1 0 weekday 2.25115304
2 5 weekday 0.44528302
3 10 weekday 0.17316562
4 15 weekday 0.19790356
5 20 weekday 0.09895178
6 25 weekday 1.59035639
这是我的尝试:
byDate <- group_by(NAreplacement, date)
averageStepsDayType <- summarize(byDate, mean(steps))
> head(averageStepsDayType)
date x
1 2012-10-01 37.38260
2 2012-10-02 0.43750
3 2012-10-03 39.41667
4 2012-10-04 42.06944
5 2012-10-05 46.15972
6 2012-10-06 53.54167
有人能给我举个例子吗?我想它应该是 select 和 group_by 函数之间的组合,但我还没有弄清楚如何。
尝试
library(dplyr)
NAreplacement %>%
group_by(interval, dayType) %>%
summarise(x=mean(steps))
我想了解如何使用 dplyr 包编写以下代码:
averageStepsDayType <- aggregate(
NAreplacement$steps,
by=list(interval=NAreplacement$interval, dayType=NAreplacement$dayType),
mean
)
这是原始数据框:
> head(NAreplacement)
steps date interval dayType
1 1.7169811 2012-10-01 0 weekday
2 0.3396226 2012-10-01 5 weekday
3 0.1320755 2012-10-01 10 weekday
4 0.1509434 2012-10-01 15 weekday
5 0.0754717 2012-10-01 20 weekday
6 2.0943396 2012-10-01 25 weekday
这是使用上述代码获得的所需输出:
> head(averageStepsDayType)
interval dayType x
1 0 weekday 2.25115304
2 5 weekday 0.44528302
3 10 weekday 0.17316562
4 15 weekday 0.19790356
5 20 weekday 0.09895178
6 25 weekday 1.59035639
这是我的尝试:
byDate <- group_by(NAreplacement, date)
averageStepsDayType <- summarize(byDate, mean(steps))
> head(averageStepsDayType)
date x
1 2012-10-01 37.38260
2 2012-10-02 0.43750
3 2012-10-03 39.41667
4 2012-10-04 42.06944
5 2012-10-05 46.15972
6 2012-10-06 53.54167
有人能给我举个例子吗?我想它应该是 select 和 group_by 函数之间的组合,但我还没有弄清楚如何。
尝试
library(dplyr)
NAreplacement %>%
group_by(interval, dayType) %>%
summarise(x=mean(steps))