R: How to downsample a tibble with daily data to weekly Mondays data?
在使用 Pandas 的 Python 中,您可以使用 df.resample('W-MON').ffill() 来完成。 R 中的等价物是什么?
到目前为止,我有这个,但是它使用周末数据重新采样,并且代码已经看起来不太可读:
1 2 3 4 | downsample_weekly <- function(tbl, DATE) { ds_ts <- xts(tbl, order.by = as.POSIXct(tbl$DATE)) as_tibble(ds_ts[endpoints(ds_ts,"weeks")]) } |
您想在某个数据字段中提取对应于星期一的小标题行吗?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | library(tidyverse) library(lubridate) # Example data foo <- data_frame(Date = seq(ymd("2018-01-01"), ymd("2018-01-31"), length.out = 31), Bar = runif(31)) foo %>% filter(weekdays(Date) =="Monday") #> # A tibble: 5 x 2 #> Date Bar #> <date> <dbl> #> 1 2018-01-01 0.865 #> 2 2018-01-08 0.119 #> 3 2018-01-15 0.778 #> 4 2018-01-22 0.440 #> 5 2018-01-29 0.550 |
不清楚你的代码为什么使用