回归插补法_R语言缺失值的处理:线性回归模型插补

本文介绍了如何在R语言中使用回归插补法处理缺失值,通过模拟数据和线性回归模型展示了不同处理策略的效果,包括用固定数值替换缺失值、使用指示符以及插补方法。实验结果显示,插补方法相比直接替换或删除缺失值,能提供更准确的估计并减少偏差。
摘要由CSDN通过智能技术生成

24a566ece9cc256676c4309be8ff89b4.png

在当我们缺少值时,系统会告诉我用-1代替,然后添加一个指示符,该变量等于-1。这样就可以不删除变量或观测值。

我们在这里模拟数据,然后根据模型生成数据。未定义将转换为NA。一般建议是将缺失值替换为-1,然后拟合未定义的模型。默认情况下,R的策略是删除缺失值。如果未定义50%,则缺少数据,将删除一半的行

n=1000

x1=runif(n)

x2=runif(n)

e=rnorm(n,.2)

y=1+2*x1-x2+e

alpha=.05

indice=sample(1:n,size=round(n*alpha))

base=data.frame(y=y,x1=x1)

base$x1[indice]=NA

reg=lm(y~x1+x2,data=base)

我们模拟10,000,然后看看未定义的分布,

m=10000

B=rep(NA,m)

hist(B,probability=TRUE,col=rgb(0,0,1,.4),border="white",xlab="missing values = 50%")

lines(density(B),lwd=2,col="blue")

abline(v=2,lty=2,col="red")

087b4c613691c30739ef054884d24ffd.png

当然,丢失值的比率较低-丢失的观测值较少,因此估计量的方差较小。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值