【发布时间】:2017-02-11 21:01:35
【问题描述】:
以下两个 R 函数来自《Flexible Imputation of Missing Data》一书(第 59 和 63 页)。第一个生成完全随机缺失(MCAR)数据,第二个生成随机缺失(MAR)数据。这两个函数都给出了大约 50% 的缺失值。
在 MCAR 函数中,我们可以通过改变 p 值来生成不同百分比的缺失数据。但是在 MAR 函数中,我不明白我们应该更改哪个参数来生成不同百分比的缺失数据,例如 10% 或 30%?
MCAR
makemissing <- function(data, p=0.5){
rx <- rbinom(nrow(data), 1, p)
data[rx==0,"y"] <- NA
return(data)
}
三月
logistic <- function(x) exp(x)/(1+exp(x))
set.seed(32881)
n <- 10000
y <- mvrnorm(n=n,mu=c(5,5),Sigma=matrix(c(1,0.6,0.6,1),nrow=2))
p2.marright <- 1 - logistic(-5 + y[,1])
r2.marright <- rbinom(n, 1, p2.marright)
yobs <- y
yobs[r2.marright==0, 2] <- NA
【问题讨论】:
-
有关缺失数据主题的信息性报道,请参阅 Roderick J.A. 的 Statistical Analysis with Missing Data 2nd Edition。利特尔和唐纳德 B. 鲁宾 (2002) 威利.
标签: r regression missing-data