因此,我尝试按天查找平均温度。数据的标题在下面。因此,我试图查找每个星期一,星期二,...和星期日的平均温度。我应该使用哪种功能对所有日期进行分组并找到其平均温度?
Date
<fctr>
AvgTemp
<dbl>
1 01/01/2013 20.72222
2 01/02/2013 19.05556
3 01/03/2013 23.05556
4 01/04/2013 23.88889
5 01/05/2013 28.38889
6 01/06/2013 29.00000
答案 0 :(得分:0)
我们可以使用wday
包中的lubridate
函数来获取每个日期的星期几。在此之前,每个日期都应该在date
类中,我们可以使用dmy
中的lubridate
函数来实现。
library(dplyr)
library(lubridate)
dat2 <- dat %>%
mutate(Date = dmy(Date)) %>%
mutate(WeekDay = wday(Date)) %>%
group_by(WeekDay) %>%
summarize(AvgTemp = mean(AvgTemp)) %>%
ungroup()
dat2
# # A tibble: 5 x 2
# WeekDay AvgTemp
# <dbl> <dbl>
# 1 2 23.9
# 2 3 20.7
# 3 4 28.4
# 4 6 21.1
# 5 7 29
数据
dat <- read.table(text = " Date AvgTemp
1 01/01/2013 20.72222
2 01/02/2013 19.05556
3 01/03/2013 23.05556
4 01/04/2013 23.88889
5 01/05/2013 28.38889
6 01/06/2013 29.00000",
header = TRUE, stringsAsFactors = FALSE)