分位数回归.
- 格式:doc
- 大小:887.50 KB
- 文档页数:24
分位数回归方法在居民收入中的应用
分位数回归(quantile regression)是一种对数据进行统计建模的方法,它可以用来研究居民收入的分布情况,分析不同人群收入的差异,以及收入增长的趋势。
分位数回归的思想是,将研究对象的收入分成不同的分位数,然后分析每个分位数的收入情况。
比如,可以将居民收入分为10个分位数,从最低收入的居民到最高收入的居民依次分组,每组包含10%的居民。
分位数回归可以用来描述每个分组的收入情况,从而分析不同人群收入的差异,以及收入增长的趋势。
另外,分位数回归还可以用来研究不同人群在收入上的差异,比如,男女收入的差异、不同年龄段收入的差异、不同学历收入的差异、不同地区收入的差异等。
通过分位数回归,可以看出不同人群之间收入的差异,并分析收入差异的原因。
总之,分位数回归在居民收入研究中有着广泛的应用。
它可以用来分析不同人群收入的差异,以及收入增长的趋势,也可以用来研究不同人群在收入上的差异,从而为政策制定提供参考。
分位数回归及其实例一、分位数回归的概念分位数回归(Quantile Regression):是计量经济学的研究前沿方向之一,它利用解释变量的多个分位数(例如四分位、十分位、百分位等)来得到被解释变量的条件分布的相应的分位数方程。
与传统的OLS 只得到均值方程相比,它可以更详细地描述变量的统计分布。
传统的线性回归模型描述了因变量的条件分布受到自变量X 的影响过程。
普通最dx--乘法是估计回归系数的最基本的方法,它描述了自变量X 对于因变量y 的均值影响。
如果模型中的随机扰动项来自均值为零而且同方差的分布,那么回归系数的最dx--乘估计为最佳线性无偏估计(BLUE);如果近一步随机扰动项服从正态分布,那么回归系数的最dx--乘法或极大似然估计为最小方差无偏估计(M Ⅵ甩)。
但是在实际的经济生活中,这种假设常常不被满足,饲如数据出现尖峰或厚尾的分布、存在显著的异方差等情况,这时的最小二乘法估计将不再具有上述优良性且稳健性非常差。
最小二乘回归假定自变量X 只能影响因变量的条件分布的位置,但不能影响其分布的刻度或形状的任何其他方面。
为了弥补普通最dx--乘法(0Ls)在回归分析中的缺陷,Koenkel"和Pxassett 于1978年提出了分位数回归(Quantile Regression)的思想。
它依据因变量的条件分位数对自变量X 进行回归,这样得到了所有分位数下的回归模型。
因此分位数回归相比普通最小二乘回归只能描述自变量X 对于因变量y 局部变化的影响而言,更能精确地描述自变量X 对于因变量y 的变化范围以及条件分布形状的影响。
分位数回归是对以古典条件均值模型为基础的最小二乘法的延伸,用多个分位函数来估计整体模型。
中位数回归是分位数回归的特殊情况,用对称权重解决残差最小化问题,而其他的条件分位数回归则用非对称权重解决残差最小化。
一般线性回归模型可设定如下:()((0)),(0,1).x t t I t ρττ=-<∈在满足高斯-马尔可夫假设前提下,可表示如下:01122(|)...k k E y x x x x αααα=++++其中u 为随机扰动项k αααα,...,,,210为待估解释变量系数。
分位数回归分析简介分位数回归分析(Quantile Regression Analysis)是一种统计分析方法,用来研究因变量与一个或多个自变量之间关系的非线性问题。
相比于传统的OLS(Ordinary Least Squares)回归分析,分位数回归分析更加灵活,能够提供对不同分位数的因变量条件分布的估计。
分位数回归的定义在传统的OLS回归中,我们通过找到一条线性回归方程来描述自变量和因变量之间的关系。
但是,OLS回归假设因变量在各个条件上的分布是相同的,即在不同的自变量取值下,因变量的条件分布是相同的。
而在分位数回归中,我们允许因变量在不同条件下的分布产生变化,因此可以更准确地描述不同区间的因变量与自变量之间的关系。
分位数回归的目标是找到一组系数,用于描述自变量与因变量在给定分位数时的关系。
分位数回归通过最小化残差的绝对值之和来估计这组系数。
这种方法使得我们能够探索不同分位数下自变量和因变量之间的变化。
分位数回归的优势相比于OLS回归,分位数回归具有以下优势:1.非线性建模能力:分位数回归能够对因变量和自变量之间的非线性关系进行建模,从而更准确地描述实际数据的特征。
2.探索条件分布的能力:由于分位数回归允许因变量在不同条件下的分布变化,因此可以提供对不同分位数的条件分布的估计,进一步帮助我们理解数据的性质。
3.对异常值的鲁棒性:分位数回归对异常值更加鲁棒,因为它通过最小化残差的绝对值之和来估计系数,而不是最小二乘法中常用的最小化残差的平方和。
4.考虑不完全因果关系:分位数回归可以用来研究因变量对自变量的影响程度,考虑到因变量可能由其他未观测的变量影响,从而提供了一种更加全面的因果分析方法。
分位数回归的应用分位数回归广泛应用于各个领域,以下是一些常见的应用场景:1.收入和贫困研究:分位数回归可以用来研究不同收入水平下的贫困率变化,进一步探讨收入不平等的影响因素。
2.教育研究:分位数回归可以用来研究教育水平对工资收入的影响情况,从而分析教育对个体生活水平的提高程度。
分位数回归工具变量
分位数回归是一种统计学方法,用于估计给定分位数的响应变量的值。
工具变量是一种用于解决回归分析中内生性问题的重要方法。
在分位数回归中,工具变量可以用于解决回归模型中的遗漏变量偏差问题。
具体来说,在分位数回归中,工具变量可以用于解决以下问题:
1. 遗漏变量偏差:如果回归模型中遗漏了与解释变量
相关的变量,那么回归系数可能会受到这种遗漏变量的影响,从而导致有偏估计。
通过使用工具变量,可以消除这种遗漏变量偏差,得到无偏的回归系数估计。
2. 异方差问题:在分位数回归中,残差项的方差可能
随着解释变量的变化而变化,从而导致回归系数的方差估计不准确。
通过使用工具变量,可以减轻这种异方差问题,得到更准确的回归系数估计。
3. 样本选择偏倚:在现实世界中,观测数据的获取可
能存在选择性偏倚,从而导致回归系数的有偏估计。
通过使
用工具变量,可以消除这种样本选择偏倚,得到无偏的回归系数估计。
在分位数回归中,工具变量的选择至关重要。
理想情况下,工具变量应该与解释变量相关,但与残差项不相关。
然而,在实际应用中,找到这样的工具变量并不容易。
因此,需要使用各种统计方法来评估工具变量的有效性,例如过度识别约束检验、随机推断等。
总之,在分位数回归中使用工具变量可以帮助解决遗漏变量偏差、异方差问题和样本选择偏倚等问题,从而得到更准确的回归系数估计。
然而,工具变量的选择和使用需要谨慎,并需要使用适当的统计方法来评估工具变量的有效性。
分位数模型回归分析分位数是描述数据分布特征的重要指标,它不同于平均数和中位数,是以一定的百分比为界限,将数据分为等量的小组内容,并计算每一组内容的平均值而被定义出来的。
分位数可以快速、全面地描述数据分布特征,是定量分析研究中一个重要的理论工具,在金融、心理学等多个学科都有广泛的应用。
分位数模型回归分析(Quantile Regression)是基于分位数理论而发展起来的,它是一种包含变量的统计回归方法,基本思想是用若干统计模型的参数估计来识别数据的分布特征,以达到更好的描述数据的目的。
它的优势在于可以拟合出更加完整的数据分布情况,更有利于我们对数据的解读。
二、分位数模型回归分析的基本原理分位数模型回归分析是一种用来估计量化分布情况的统计回归方法,基本方法是以特定的分位数来定义变量的分布,然后根据观测数据分布的特征和回归解释变量,来进行参数估计。
它同样采用最小二乘法求得拟合参数,但与其他的最小二乘法不同的是,它是将数据根据分位数分为等量的小组内容后,考虑每组中的变量均值进行回归分析,而非只考虑全部数据的拟合情况,从而完善拟合结果。
分位数模型回归分析一般分为两个步骤:首先,根据先观察到的分位数和观测数据分布情况,定义回归模型参数;然后,根据观测数据拟合参数,完成分位数模型回归分析。
三、应用分位数模型回归分析的应用已经广泛,主要在金融学、心理学、市场营销、社会学等领域,都有不同程度的使用。
1.融领域:在金融分析中,分位数模型回归分析可以用来确定数据的分布特征,从而实现对金融风险的评估和管理,并有助于金融机构获取更多有价值的信息。
2.理学领域:分位数模型回归分析可以用来准确描述各类心理和行为变量的分布特征,从而更好地掌握人类思想的内涵,为心理研究收集有价值的信息。
3.场营销:分位数模型回归分析可以用来精准描述市场需求和购买行为,从而更有效地完成消费者目标定位,为市场营销提供有价值的指导。
4.会学:分位数模型回归分析也可以用来明确社会现象的分布特征,如收入分布、社会资本分布等,从而有助于更加有效地实施社会管理和政策,实现社会系统的稳定发展。
解释变量的分位数回归在统计分析中,分位数回归是一种用来研究解释变量对不同分位数的因变量影响的方法。
与传统的普通最小二乘回归不同,分位数回归允许我们对不同分位数的条件分布进行建模。
通过分析解释变量在不同分位数下对因变量的影响程度,我们能够获取更全面的信息,揭示数据内部的特点。
分位数回归的基本思想是利用分位数损失函数来估计出不同分位数下的回归系数。
在普通最小二乘回归中,我们通常使用最小二乘损失函数,即最小化残差平方和来拟合模型。
但是这种方法在面对异常值存在的情况下可能表现不佳,因为它对所有观测值都给予相同的权重。
而分位数损失函数则能够更好地处理异常值,因为它将不同分位数下的残差赋予不同的权重,使得模型对异常值更加鲁棒。
在进行分位数回归时,我们需要指定所关注的分位数。
常用的分位数包括0.25、0.5和0.75,分别对应着数据的下四分位数、中位数和上四分位数。
通过估计这些分位数下的回归系数,我们可以得到一个更全面的回归模型,揭示不同部分数据的特点。
分位数回归不仅可以用于解释变量对因变量的影响,还可以用于解释变量之间的关系。
我们可以通过在分位数回归模型中加入交互项来研究解释变量之间的非线性关系。
例如,我们可以检验某个解释变量在不同分位数下是否对因变量产生不同的影响。
这种方法能够帮助我们发现变量之间更加复杂的相互作用,大大拓宽了我们对数据的理解和解释。
总而言之,解释变量的分位数回归是一种强大的统计分析方法,通过研究解释变量在不同分位数下对因变量的影响,我们能够获取更全面的信息,发现数据内部的特点。
分位数回归不仅能够解释变量对因变量的影响,还能够揭示变量之间的非线性关系。
它为我们研究和理解数据提供了一种有效的工具和方法。
分位数回归非连续变量
分位数回归是一种统计方法,用于估计因变量在给定自变量条件下特定分位数的值。
通常用于处理非连续变量的情况,这些非连续变量可以是分类变量或定性变量。
在分位数回归中,我们希望估计的不再是因变量的均值,而是它的分位数,比如中位数或其他分位数。
这种方法对于处理非连续变量特别有用,因为它不依赖于对数据分布的假设,而是通过对条件分布的估计来得到结果。
对于非连续变量,我们可以将其转化为虚拟变量,然后引入到分位数回归模型中。
虚拟变量是用来表示分类变量的一种方式,它可以帮助我们对非连续变量进行建模和分析。
在分位数回归中,我们可以将这些虚拟变量作为自变量引入模型,从而控制这些非连续变量对因变量特定分位数的影响。
除了引入虚拟变量外,我们还可以考虑使用其他变量转换方法来处理非连续变量,比如对数变换或者分组处理等。
这些方法可以帮助我们更好地理解非连续变量对分位数的影响,并进行有效的建模和分析。
总之,分位数回归是一种适用于处理非连续变量的统计方法,通过引入虚拟变量或其他变量转换方法,可以对非连续变量进行建模和分析,从而更好地理解其对特定分位数的影响。
2、不同分位点拟合曲线的比较# 散点图attach(engel) # 打开engel数据集,直接运行其中的列名,就可以调用相应列plot(income,foodexp,cex=0.25,type="n", # 画图,说明①xlab="Household Income", ylab="Food Expenditure")points(income,foodexp,cex=0.5,col="blue") # 添加点,点的大小为0.5abline( rq(foodexp ~ income, tau=0.5), col="blue" ) # 画中位数回归的拟合直线,颜色蓝abline( lm(foodexp ~ income), lty = 2, col="red" ) # 画普通最小二乘法拟合直线,颜色红taus = c(0.05, 0.1, 0.25, 0.75, 0.9, 0.95)for(i in 1:length(taus)){ # 绘制不同分位点下的拟合直线,颜色为灰色abline( rq(foodexp ~ income, tau=taus[i]), col="gray" )}detach(engel)3、穷人和富人的消费分布比较# 比较穷人(收入在10%分位点的那个人)和富人(收入在90%分位点的那个人)的估计结果# rq函数中,tau不在[0,1]时,表示按最细的分位点划分方式得到分位点序列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值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) )/2ap = 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"))上图表示收入(income)为10%分位点处(poor,穷人)和90%分位点处(rich,富人)的食品支出的比较。
从左图可以发现,对于穷人而言,在不同分位点估计的食品消费差别不大。
而对于富人而言,在不同分位点对食品消费的差别比较大。
右图反应了穷人和富人的食品消费分布曲线。
穷人的食品消费集中于400左右,比较陡峭;而富人的消费支出集中于800结果:Quantile Regression Analysis of Deviance TableModel: foodexp ~ incomeJoint Test of Equality of Slopes: tau in { 0.25 0.5 0.75 }Df Resid Df F value Pr(>F)1 2 703 15.557 2.449e-07 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘’ 1其中P值远小于0.05,故不同分位点下收入对食品支出的影响机制不同。
(五)残差形态的检验也可以理解为是比较不同分位点的模型之间的关系。
主要有两种模型形式:(1)位置漂移模型:不同分位点的估计结果之间的斜率相同或近似,只是截距不同;表现为不同分位点下的拟合曲线是平行的。
(2)位置-尺度漂移模型:不同分位点的估计结果之间的斜率和截距都不同;表现为不同分位点下的拟合曲线不是平行的。
# 残差形态的检验source("C:/Program Files/R/R-2.15.0/library/quantreg/doc/gasprice.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 = x[p:n]# 位置漂移模型的检验T1 = KhmaladzeTest(y~X, taus = -1, nullH="location")T2 = KhmaladzeTest(y~X, taus = 10:290/300,nullH="location", se="ker")结果:运行T1,可以查看其检验结果。
其中nullH表示原假设为“location”,即原假设为位置漂移模型。
Tn表示模型整体的检验,统计量为4.8。
THn是对每个自变量的检验。
比较T1和T3的结果(T3的原假设为“位置尺度漂移模型”),T1的统计量大于T3的统计量,可见相对而言,拒绝“位置漂移模型”的概率更大,故相对而言“位置尺度漂移模型”更加合适一些。
> T1$nullH[1] "location"$Tn[1] 4.803762$THnX1 X2 X3 X41.0003199 0.5321693 0.5020834 0.8926828attr(,"class")[1] "KhmaladzeTest"> T3$nullH[1] "location-scale"$Tn[1] 2.705583$THnX1 X2 X3 X41.2102899 0.6931785 0.5045163 0.8957127attr(,"class")[1] "KhmaladzeTest"(六)非线性分位数回归这里的非线性函数为Frank copula函数。
## Demo of nonlinear quantile regression model based on Frank copulavFrank <- function(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*z}n <- 200 # 样本量df <- 8 # 自由度delta <- 8 # 初始参数set.seed(1989)x <- sort(rt(n,df)) # 生成基于T分布的随机数v <- vFrank(x, df, delta, u = runif(n)) # 基于x生成理论上的非参数对应值y <- qt(v, df) # v 对应的T分布统计量windows(5,5)plot(x, y, pch="o", col="blue", cex = .25) # 散点图Dat <- data.frame(x = x, y = y) # 基本数据集us <- c(.25,.5,.75)for(i in 1:length(us)){v <- vFrank(x, df, delta, u = us[i])lines(x, qt(v,df)) # v为概率,计算每个概率对应的T分布统计量}cfMat <- matrix(0, 3, length(us)+1) # 初始矩阵,用于保存结果的系数for(i in 1:length(us)) {tau <- us[i]cat("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="red") # 绘制预测曲线cfMat[i,1] <- tau # 保存分位点的值cfMat[i,2:4] <- coef(fit) # 保存系数到cfMat矩阵的第i行cat("\n") # 如果前面把每步的结果显示出来,则每次的结果之间添加换行符}colnames(cfMat) <- c("分位点",names(coef(fit))) # 给保存系数的矩阵添加列名cfMat结果:拟合结果:(过程略)> cfMat分位点delta mu sigma [1,] 0.25 14.87165 -0.20530041 0.9134657[2,] 0.50 16.25362 0.03232525 0.9638209[3,] 0.75 12.09836 0.11998614 0.9423476(七)半参数和非参数分位数回归非参数分位数回归在局部多项式的框架下操作起来更加方便。