我是 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)
}
Run Code Online (Sandbox Code Playgroud)
但这是不正确的,我不知道如何继续。