使用 magrittr 更改值的子集
Using magrittr to change a subset of values
我有一个包含星期几列的时间序列数据框。我想用 6 代替星期天的所有星期一(第 1 天)假期,而不会使用 magrittr 破坏我的管道。
没有管道它看起来像这样:
dates = c("5/24/15", "5/25/15", "5/26/15", "5/27/15", "5/28/15", "5/29/15", "5/30/15")
df <- data.frame(date = as.POSIXct(dates,format = "%m/%d/%y"), day = 0:6, value = 1:7)
holidays <- c("2015-05-25")
df$day[df$date %in% as.POSIXct(holidays)] <- 6
但我想做这样的事情:
df <- df %>%
filter(value < 30) %>%
mutate(new_variable = something) %>%
REPLACE HOLIDAYS WITH SUNDAY HERE
使用 %in% 创建索引,然后用 mutate 替换我猜:
df %>% mutate(day=replace(day, date %in% as.POSIXct(holidays), 6))
我有一个包含星期几列的时间序列数据框。我想用 6 代替星期天的所有星期一(第 1 天)假期,而不会使用 magrittr 破坏我的管道。
没有管道它看起来像这样:
dates = c("5/24/15", "5/25/15", "5/26/15", "5/27/15", "5/28/15", "5/29/15", "5/30/15")
df <- data.frame(date = as.POSIXct(dates,format = "%m/%d/%y"), day = 0:6, value = 1:7)
holidays <- c("2015-05-25")
df$day[df$date %in% as.POSIXct(holidays)] <- 6
但我想做这样的事情:
df <- df %>%
filter(value < 30) %>%
mutate(new_variable = something) %>%
REPLACE HOLIDAYS WITH SUNDAY HERE
使用 %in% 创建索引,然后用 mutate 替换我猜:
df %>% mutate(day=replace(day, date %in% as.POSIXct(holidays), 6))