估算中位数加上抖动

问题描述 投票:2回答:1

我想在每个单元格中有效地估算缺失值,但值略有不同。

例如:

df <- data_frame(x = rnorm(100), y = rnorm(100))
df[1:5,1] <- NA
df[1:5, 2] <- NA

df %<>% mutate_all(funs(ifelse(is.na(.), jitter(median(., na.rm = TRUE)), .))) 

但是,这会在所有单元格中使用相同的数字。如何为每个单元格添加不同的噪声?当然,我可以用循环来做到这一点,但我的数据框很大,我想有效地做到这一点

r sample jitter
1个回答
0
投票

我们可以使用repn()

library(dplyr)
library(magrittr)
df %<>%
   mutate_all(list(~ case_when(is.na(.) ~ jitter(rep(median(., na.rm = TRUE), n())),
         TRUE ~ .)))
© www.soinside.com 2019 - 2024. All rights reserved.