【发布时间】:2020-01-06 00:27:05
【问题描述】:
考虑对不规则快照的观察,其中一些是 NA:
library(tidyverse)
library(tweenr)
df <- data.frame(date = c(ymd("20191201"), ymd("20191203"), ymd("20191207"), ymd("20191220")),
value = c(1, 2, NA, 5))
仅在具有非 NA 值的观测值之间线性插值日期的最简洁方法是什么? (在这个例子中,因为 20191201 和 20191203 有连续的非 NA 值,应该有插值)我认为以某种方式使用 lead 或 lag。此代码在所有值之间进行插值:
all_days <- data.frame(date = seq(min(df$date), max(df$date), "day"))
df %>%
arrange(date) %>%
right_join(all_days) %>%
mutate(value = value %>% tween_fill("linear"))
【问题讨论】:
标签: r dplyr interpolation