gpt4 book ai didi

r - 在时间序列中查找缺失值

转载 作者:行者123 更新时间:2023-12-02 04:35:49 25 4
gpt4 key购买 nike

我有一个时间序列数据。我需要在时间序列数据中找到缺失值并将其显示给用户。我只需要一个可以快速运行的算法。由于此输出需要在 Shiny 中生成。不能让用户久等

# creating sample data
topdays <- seq(1,6,2)
topobs <- rep("Adams",3)
middays <- rep(seq(1:6),3)
midobs <- c(rep("Allen",6),rep("Benton",6),rep("Blackford",6))
bottomdays <- seq(1,6,2)
bottomobs <- rep("Brown",3)
values <- runif(24, min=70, max=100)
obs <- c(topobs,midobs,bottomobs)
days <- c(topdays,middays,bottomdays)
df <- data.frame(days,values,obs)
# end creation of sample data

如您所见,Adams 和 Brown 在第 2、4、6 天的观察数据缺失。

我想创建一个函数来捕捉丢失的一天和观察结果

输出应创建一个包含缺失值及其观察值的数据框。

我刚刚创建了一个问题陈述示例。

真正的数据集会非常大。

感谢您期待看到这个。让我知道是否可以提供更多详细信息

最佳答案

我们可以尝试:

library(data.table)
setDT(df)
setkeyv(df, c("days", "obs"))
df[with(df, expand.grid(unique(days), unique(obs)))][is.na(values)]

输出

   days values   obs
1: 2 NA Adams
2: 4 NA Adams
3: 6 NA Adams
4: 2 NA Brown
5: 4 NA Brown
6: 6 NA Brown

关于r - 在时间序列中查找缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43238774/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com