我借用了这里给出的可重复的例子:
Aggregate daily level data to weekly level in R
因为它非常接近我想做的事情。
Interval value
1 2012-06-10 552
2 2012-06-11 4850
3 2012-06-12 4642
4 2012-06-13 4132
5 2012-06-14 4190
6 2012-06-15 4186
7 2012-06-16 1139
8 2012-06-17 490
9 2012-06-18 5156
10 2012-06-19 4430
11 2012-06-20 4447
12 2012-06-21 4256
13 2012-06-22 3856
14 2012-06-23 1163
15 2012-06-24 564
16 2012-06-25 4866
17 2012-06-26 4421
18 2012-06-27 4206
19 2012-06-28 4272
20 2012-06-29 3993
21 2012-06-30 1211
22 2012-07-01 698
23 2012-07-02 5770
24 2012-07-03 5103
25 2012-07-04 775
26 2012-07-05 5140
27 2012-07-06 4868
28 2012-07-07 1225
29 2012-07-08 671
30 2012-07-09 5726
31 2012-07-10 5176
在他的问题中,他要求每周汇总一次,我想做的是在“星期几”汇总。
所以我希望有一个类似于那个的表,添加一周中同一天的值:
Day of the week value
1 "Sunday" 60000
2 "Monday" 50000
3 "Tuesday" 60000
4 "Wednesday" 50000
5 "Thursday" 60000
6 "Friday" 50000
7 "Saturday" 60000
答案 0 :(得分:1)
我们可以使用weekdays
每周间隔对它们进行分组:
library(dplyr)
df %>%
group_by(Day_Of_The_Week = weekdays(as.Date(Interval))) %>%
summarise(value = sum(value))
# Day_Of_The_Week value
# <chr> <int>
#1 Friday 16903
#2 Monday 26368
#3 Saturday 4738
#4 Sunday 2975
#5 Thursday 17858
#6 Tuesday 23772
#7 Wednesday 13560
答案 1 :(得分:1)
您可以尝试:
aggregate(d$value, list(weekdays(as.Date(d$Interval))), sum)
答案 2 :(得分:0)
我们可以使用<div id="chart_line" style="position: relative;">
<input list="myUL" type="text" id="myInput" onclick="myFunction()" onkeyup="myFunction()" style="width:30%;">
<div id="triggers">
<img class="trigger" onclick="deleteValue()" src="css/clearT.png" id="cross">
<img class="trigger" src="css/combo_arrow.png" id="arrow">
</div>
<datalist id="myUL">
<option value="United State"/>
<option value="United Kingdom"/>
<option value="Afghanistan"/>
<option value="Aland Islands"/>
<option value="Albania"/>
<option value="United State"/>
<option value="United Kingdom"/>
<option value="Afghanistan"/>
<option value="Aland Islands"/>
<option value="Albania"/>
<option value="undefined"/>
</datalist>
</div>
data.table
答案 3 :(得分:0)
使用lubridate https://cran.r-project.org/web/packages/lubridate/vignettes/lubridate.html
df1$Weekday=wday(arrive,label=TRUE)
library(data.table)
df1=data.table(df1)
df1[,sum(value),Weekday]