gpt4 book ai didi

r - 在 R 中使用 ROLLING 均值插补缺失值

转载 作者:行者123 更新时间:2023-12-02 01:17:25 26 4
gpt4 key购买 nike

我是 R 的新手并且正在努力解决问题。

我需要一个函数来根据给定大小的窗口内元素的平均值来估算向量中的缺失值。

但是,这个窗口会移动,因为,比如我的 NA在位置 30,我的窗口大小是 10,应该为 x[20:40] 计算平均值.所以对于每个找到的 NA ,窗口均值会有所不同。

我一直在尝试这个:

impute.to.window.mean <- function(x, window) {

na.idx <- is.na(x) #find missing values in x

for (na in na.idx) {

y <- (x[na]-window):(x[na]+window)
na.idx[na] <- mean(y, na.rm = TRUE)
}

return(x)
}

但这不正确,我不知道如何继续。

最佳答案

您可能需要考虑使用 imputeTS包裹。以下是使用简单移动平均线和 4 窗口填充值的示例:

x <- rnorm(100)
x[c(7, 21, 33)] <- NA

imputeTS::na.ma(x, k = 4, weighting = "simple")

关于r - 在 R 中使用 ROLLING 均值插补缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42072687/

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