ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:159.02KB ,
资源ID:20522632      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20522632.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(用R语言进行分位数回归Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

用R语言进行分位数回归Word文档格式.docx

1、98/100) )fit2 = summary( rq(foodexp income, tau = c,) )windows(5,5) # 新建一个图形窗口,可以去掉这句plot(fit1)plot(fit2)# 散点图attach(engel) # 打开engel数据集,直接运行其中的列名,就可以调用相应列plot(income,foodexp,cex=,type=n, # 画图,说明 xlab=Household Income, ylab=Food Expenditure)points(income,foodexp,cex=,col=blue)# 添加点,点的大小为abline( rq(f

2、oodexp income, tau=, col= )# 画中位数回归的拟合直线,颜色蓝abline( lm(foodexp income), lty = 2, col=red# 画普通最小二乘法拟合直线,颜色红taus = c, , , , , for(i in 1:length(taus) # 绘制不同分位点下的拟合直线,颜色为灰色abline( rq(foodexp income, tau=tausi), col=gray )detach(engel)# 比较穷人(收入在10%分位点的那个人)和富人(收入在90%分位点的那个人)的估计结果# rq函数中,tau不在0,1时,表示按最细的分

3、位点划分方式得到分位点序列z = rq(foodexp income, tau=-1)z$sol # 这里包含了每个分位点下的系数估计结果 = quantile(income, # 10%分位点的收入 = quantile(income, # 90%分位点的收入ps = z$sol1, # 每个分位点的tau值 = c( c(1, %*% z$sol4:5, )# 10%分位点的收入的消费估计值 # 90%分位点的收入的消费估计值windows(10,5)par(mfrow=c(1,2) # 把绘图区域划分为一行两列plot(c(ps,ps),c,type= # type=”n”表示初始化图形

4、区域,但不画图 xlab=expression(tau), ylab=quantileplot(stepfun(ps,c1,), =F, add=T)plot(stepfun(ps,c1,), =F, add=T, =, = = ( c(0,diff(ps) + c(diff(ps),0) )/2ap = akj, z=, p=ar = akj, z=, p=plot(c, c(ap$dens, ar$dens), type=, xlab=Densitylines,ar$dens,col=lines,ap$dens,col=blacklegend(topright, c(poor,rich),

5、 lty=c(1,1), col=c()# 比较不同分位点下,收入对食品支出的影响机制是否相同fit1 = rq(foodexp income, tau = fit2 = rq(foodexp income, tau = fit3 = rq(foodexp income, tau = anova(fit1,fit2,fit3)# 残差形态的检验source(C:/Program Files/R/x = gaspricen = length(x)p = 5X = cbind(x(p-1):(n-1),x(p-2):(n-2),x(p-3):(n-3),x(p-4):(n-4)y = xp:n#

6、位置漂移模型的检验T1 = KhmaladzeTest(yX, taus = -1, nullH=location) T2 = KhmaladzeTest(yX, taus = 10:290/300, nullH=, se=ker# 位置尺度漂移模型的检验T3 = KhmaladzeTest(yX, taus = -1, nullH=location-scaleT4 = KhmaladzeTest(yX, taus = 10:# Demo of nonlinear quantile regression model based on Frank copulavFrank - function(

7、x, df, delta, u)# 某个非线性过程,得到的是0,1的值-log(1-(1-exp(-delta)/(1+exp(-delta*pt(x,df)*(1/u)-1)/delta# 非线性模型FrankModel - function(x, delta, mu,sigma, df, tau) z - qt(vFrank(x, df, delta, u = tau), df)mu + sigma*zn - 200# 样本量df - 8 # 自由度delta - 8 # 初始参数(1989) x - sort(rt(n,df)# 生成基于T分布的随机数v - vFrank(x, df,

8、delta, u = runif(n)# 基于x生成理论上的非参数对应值y - qt(v, df) # v 对应的T分布统计量windows(5,5)plot(x, y, pch=o, col=, cex = .25) # 散点图Dat - (x = x, y = y) # 基本数据集us - c(.25,.5,.75)length(us)- vFrank(x, df, delta, u = usi)lines(x, qt(v,df)# v为概率,计算每个概率对应的T分布统计量cfMat - matrix(0, 3, length(us)+1) # 初始矩阵,用于保存结果的系数length(u

9、s) tau - usicat(tau = , format(tau), . fit - nlrq(y FrankModel(x, delta,mu,sigma, df = 8, tau = tau), # 非参数模型 data = Dat, tau = tau,# data表明数据集,tau分位数回归的分位点 start= list(delta=5, mu = 0, sigma = 1), # 初始值 trace = T) # 每次运行后是否把结果显示出来lines(x, predict(fit, newdata=x), lty=2, col=# 绘制预测曲线cfMati,1 - tau #

10、 保存分位点的值cfMati,2:4 - coef(fit) # 保存系数到cfMat矩阵的第i行n # 如果前面把每步的结果显示出来,则每次的结果之间添加换行符colnames(cfMat) - c(分位点,names(coef(fit)# 给保存系数的矩阵添加列名cfMat# 2-7-1 半参数模型-fit-rq(ybs(x,df=5)+z,tau=.33)# 其中bs()表示按b-spline的非参数拟合# 2-7-2 非参数方法lprq -function(x,y,h,m=50,tau=# 这是自定义的一个非参数计算函数,在其他数据下同样可以使用xx-seq(min(x),max(x)

11、,length=m) # m个监测点fv-xxdvlength(xx) z-x-xxi wx-dnorm(z/h) # 核函数为正态分布,dnorm计算标准正态分布的密度值 r-rq(yz,weights=wx,tau=tau, # 上面计算得到的密度值为权重 ci=FALSE) fvi-r$coef1 dvi-r$coef2list(xx=xx,fv=fv,dv=dv)# 输出结果library(MASS)data(mcycle)attach(mcycle) # 非参数的结果一般是通过画图查看的plot(times,accel,xlab=milliseconds,ylab=accelerat

12、ionhs-c(1,2,3,4) # 选择不同窗宽进行估计for(i in hs)h=hsi-lprq(times,accel,h=h,tau=# 关键拟合函数lines(fit$xx,fit$fv,lty=i)legend(45,-70,c(h=1h=2h=3h=4), lty=1:length(hs)# 2-7-3 非参数回归的另一个方法-# 考察最大的跑步速度与体重的关系data(Mammals)attach(Mammals)x-log(weight)# 取得自变量的值y-log(speed)# 取得因变量的值plot(x,y,xlab=Weightinlog(Kg)Speedinlog

13、(Km/hour),points(xhoppers,yhoppers,pch=h,col=points(xspecials,yspecials,pch=sothers0 & dat$foodexp0,dat2,lnincome = log( dat2, )lnfoodexpdat2 = (dat2)# 去掉log变换以后的缺失值行dim(dat2)# 散点图,观察是否需要log变换attach(dat)# 不变换plot(income,foodexp,cex=,main=散点图detach(dat)# 变换attach(dat2)plot(lnincome,lnfoodexp,cexp=,ma

14、in=散点图(对数变换以后)detach(dat2)# 建立基础的分位数回归模型taus = c,fit1 = rq( lnfoodexp lnincome, data=dat2, tau=taus, method=fnfit2 = rq( lnfoodexp lnincome, data=dat2dat2$urtype=1, tau=taus, method=fit3 = rq( lnfoodexp lnincome, data=dat2dat2$urtype=2,# 所有数据放在一起是参数结果s1 = summary(fit1)# 男性s2 = summary(fit2)# 女性s3 =

15、summary(fit3)# 参数结果的直接比较tabs(s1)# 这里的tabs函数是笔者自己写的,方便显示结果tabs(s2)tabs(s3)# 具体的系数估计值及假设检验tabcoef(s1)# 这里的tabcoef函数是笔者自己写的,方便显示结果tabcoef(s2)tabcoef(s3)Quantiles(Intercept)lnincomeValueStd. Errort valuePr(|t|)# 参数结果的检验T1 = KhmaladzeTest(lnfoodexp lnincome, taus=seq(.1,.9,by = .1), T2 = KhmaladzeTest(lnfoo

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1