求助:r语言分位数回归engel数据穷人与富人的比较时stepfun函数的作用是什么

求助:r语言分位数回归engel数据穷人与富人的比较时stepfun函数的作用是什么_第1张图片

 

attach(engel)
engel
z = rq(foodexp ~ income, tau=-1) 
z$sol     # 这里包含了每个分位点下的系数估计结果
x.poor = quantile(income, 0.1) # 10%分位点的收入
x.rich = quantile(income, 0.9) # 90%分位点的收入
ps = z$sol[1,]              # 每个分位点的tau值
ps
qs.poor = c( c(1,x.poor) %*% z$sol[4:5,] ) # 10%分位点的收入的消费估计值
qs.rich = c( c(1,x.rich) %*% z$sol[4:5,] )   # 90%分位点的收入的消费估计值
windows(10,5)
par(mfrow=c(1,2))                 # 把绘图区域划分为一行两列
plot(c(ps,ps),c(qs.poor,qs.rich),type="n",     # type=”n”表示初始化图形区域,但不画图
     xlab=expression(tau), ylab="quantile")
plot(stepfun(ps,c(qs.poor[1],qs.poor)), do.points=F,
     add=T)
plot(stepfun(ps,c(qs.poor[1],qs.rich)), do.points=F,
     add=T, col.hor="gray", col.vert="gray")

 

ps.wts = ( c(0,diff(ps)) + c(diff(ps),0) )/2
ap = akj(qs.poor, z=qs.poor, p=ps.wts)
ar = akj(qs.rich, z=qs.rich, p=ps.wts)
plot(c(qs.poor,qs.rich), c(ap$dens, ar$dens),
     type="n", xlab="Food Expenditure", ylab="Density")
lines(qs.rich,ar$dens,col="gray")
lines(qs.poor,ap$dens,col="black")
legend("topright", c("poor","rich"), lty=c(1,1),
       col=c("black","gray"))
 

你可能感兴趣的:(回归,r语言)