当前位置:文档之家› 数值计算方法大作业

数值计算方法大作业

题目利用数值计算方法求取基尼系数姓名与学号指导教师年级与专业所在学院一、问题综述:基尼系数(Gini coefficient),是20世纪初意大利学者科拉多·吉尼根据劳伦茨曲线所定义的判断收入分配公平程度的指标。

是比例数值,在0和1之间。

基尼指数(Gini index)是指基尼系数乘100倍作百分比表示。

在民众收入中,如基尼系数最大为“1”,最小等于“0”。

前者表示居民之间的收入分配绝对不平均(即所有收入都集中在一个人手里,其余的国民没有收入),而后者则表示居民之间的收入分配绝对平均,即人与人之间收入绝对平等,但这两种情况只出现在理论上;因此,基尼系数的实际数值只能介于0~1之间,基尼系数越小收入分配越平均,基尼系数越大收入分配越不平均。

设右图中的实际收入分配曲线(红线)和收入分配绝对平等线(绿线)之间的面积为A,和收入分配绝对不平等线(蓝线)之间的面积为B,则表示收入与人口之间的比例的基尼系数为AA+B。

如果A为零,即基尼系数为0,表示收入分配完全平等(红线和绿线重叠);如果B为零,则系数为1,收入分配绝对不平等(红线和蓝线重叠)。

该系数可在0和1之间取任何值。

实际上,一般国家的收入分配,既不是完全平等,也不是完全不平等,而是在两者之间,劳伦茨曲线为一条凸向横轴的曲线。

收入分配越趋向平等,劳伦茨曲线的弧度越小(斜度越倾向45度),基尼系数也越小;反之,收入分配越趋向不平等,劳伦茨曲线的弧度越大,那么基尼系数也越大。

基尼系数的调节需要国家通过财政政策进行国民收入的二次分配,例如对民众的财政公共服务支出和税收等,从而让收入均等化,令基尼系数缩小。

基尼系数由于给出了反映居民之间贫富差异程度的数量界线,可以较客观、直观地反映和监测居民之间的贫富差距,预报、预警和防止居民之间出现贫富两极分化。

因此得到世界各国的广泛认同和普遍采用。

联合国有关组织规定:●若低于0.2表示收入平均;●0.2-0.3表示相对平均;●0.3-0.4表示相对合理;●0.4-0.5表示收入差距大;●0.6以上表示收入差距悬殊。

2013年1月18日,中国国家统计局一次性公布了自2003年以来十年的全国基尼系数。

大陆统计局局长马建堂称,按照国际新的统计口径,大陆居民收入的基尼系数,2003年是0.479,2004年是0.473,2005年为0.485,2006年为0.487,2007年为0.484,2008年为0.491,2009年为0.490,2010年为0.481,2011年为0.477,到2012年的数据是0.474,为2005年以来最低水平,而自2008年起,基尼系数也在逐年下降。

而此前西南财大调查数据显示,中国的2012年的基尼系数为0.61,但无论是民间统计的数据还是官方统计的数据,结果都遭到学术界质疑,仍具有争议性。

本文将根据网络上国家统计局的数据,利用上面给出的公式来计算我国从2002年以来的城镇居民基尼系数,并将计算出的数据与现有数据进行比较。

全球基尼系数二、问题分析:想要通过拟合曲线再积分求取基尼系数,需要先求取劳伦茨曲线。

劳伦茨曲线是1905年由经济学家马克斯·劳伦茨所提出的表示收入分配的曲线。

在经济学里,劳伦兹曲线是在过往财富分配数据上建立的累积分布函数所对应的曲线,它通过变量y%的值来反映各项分配的比例。

它经常被用来描述收入的分配情况,即以x%代表一部分(收入相似)家庭占整个社会家庭的比例,以y%代表该部分家庭的收入占整个社会收入的比例。

该曲线也可用来描述社会资本的分配情况。

在这些应用当中,经济学家经常把它用来衡量社会(主要指社会收入)是否公平。

所利用的概率密度分布函数为:本文中使用国家统计局网站上面的数据,先采用拟合得方法来得到劳伦茨曲线,然后再用积分的方法来计算我国城镇居民的基尼系数。

并分别使用多种方法进行计算,例如直接用求得的数据进行插值积分来计算基尼系数,比较不同,再和上文中所提到的国家统计局统计出的基尼系数进行比较,进行进一步的分析。

三、问题解决首先在国家统计局的网站上面找到了按收入等级分城镇居民家庭基本情况——城镇居民平均每人全部年收入。

列举数据表如下(困难户是包含在最低收入户中的群体):表1.2007-2012年城镇居民平均每人全部年收入表2.2002-2006年城镇居民平均每人全部年收入统计局的数据将所有城镇居民按收入划分为八个部分,按照劳伦茨曲线的定义,我们对每年的数据进行分析都可以得到七个数据点。

通过这七个数据点再加上固有的(0,0),(1,1)点,每年共9个点,就是我们需要的数据。

数据处理方法:从低到高算起,拿2012年的数据为例,对于城镇居民困难户(5%),其收入占总收入的比例为:7520.90∗5%=1.39%26959.00∗100%如果令第一个点为固定点(0,0),则由上面的结果可以求得第二个点为:(0.0139,0.05)。

同样,对于城镇居民最低收入户(10%),其收入占总收入的比例为:9209.50∗10%=3.42%26959.00∗100%由于困难户是包含在最低收入户中的,所以不用进行累加,可直接得到第三个点:(0.0342,0.10)。

之后,对于城镇居民较低收入户(10%),其收入占总收入的比例为:13724.70∗10%=5.09%26959.00∗100%由于与之前不再具有包含关系,所以需要与之前的计算结果进行累加,可得到第四个点:(0.0851,0.20)。

之后的计算方式以此类推,此处不再赘述。

以此种方法对以上数据处理后,可得到如下结果:表3.2007-2012年数据处理结果表4.2002-2006年数据处理结果1.最小二乘法拟合最小二乘法是拟合近似曲线,使偏差平方和最小。

一般设:φ(x)=a0φ0(x)+a1φ1(x)+⋯+a nφn(x)mS(a0,a1,……,a n)=∑[a0φ0(x)+a1φ1(x)+⋯+a nφn(x)−y i]2i=1求S的最小值,即∂S=0⇒a0(φk,φ0)+a1(φk,φ1)+⋯+a n(φk,φn)=(φk,f)k其中k=0,1…n对于代数多项式拟合,可以得到:源程序zxecf.m:function[a]=zxecf(x,y,n)% input: x is independent variable matrix% y is dependent variable matrix% n is the order of the fitting% output:a is the polynomial coefficient matrix of fittingm=length(x);C=zeros(m,n+1);for i=1:n+1C(:,i)=x'.^(i-1);endA=C'*C;b=C'*y';a=gauss(A,b); %Gaussian eliminationfor i=1:n+1t(i)=a(n-i+2);enda=t;上面代码中用到的高斯消去法的代码如下:源程序gauss.m:function [x]=gauss(a,b)% input the A,B of AX=B% output the X of AX=Bn=length(a);ab = [a b]; % augmented matrixfor k=1:n-1[~,index] = max(abs(ab(k:n,k))); %gain the location of max numberindex=index+k-1; % The biggest column main entry number of rowsif index ~= ktemp = ab(index,:);ab(index,:) = ab(k,:);ab(k,:) = temp;end%exchange the column main entry to current rowfor j=k+1:nfactor=ab(j,k)/ab(k,k);ab(j,k:n+1) = ab(j,k:n+1) - factor.*ab(k,k:n+1);endend%elimination processx(n)=ab(n,n+1)/ab(n,n);for i=n-1:-1:1sum=ab(i,n+1);for j=i+1:nsum=sum-ab(i,j)*x(j);endx(i)=sum/ab(i,i);endend以2012年数据为例,输入:先试进行四阶拟合,运行源程序a=zxecf(x,y,4),可得:常数项不为0,可见拟合效果不是很好,继续增大拟合阶数至7阶时,可得:即y=−6.0662x7+20.2785x6−26.4926x5+17.7751x4−6.6249x3+ 1.9313x2+0.1988x此时拟合效果比较好。

拟合效果如下图:x=[0 0.05 0.1 0.2 0.4 0.6 0.8 0.9 1]y=[0 0.0139 0.0342 0.0851 0.2214 0.4034 0.6464 0.8077 1]a =0.6832 -0.9742 1.0406 0.2511 -0.0004a =-6.0662 20.2785 -26.4926 17.7752 -6.6249 1.9313 0.1988 -0.0000对所有年份进行七阶拟合,结果如下表所示:表5.最小二乘法拟合结果2.龙贝格积分龙贝格积分法是通过用若干个积分近似值来推算更精确的新的近似值的方法。

外推公式为:R(j,k)=R(j,k−1)+R(j,k−1)−R(j−1,k−1)4k−1其中第一列:T0(0)=b−a2[f(a)+f(b)]T0(l)=1T0(l−1)+b−al∑f[a+(2i−1)b−al]2l−1i=1,l=1,2,3…外推到k=4即可,因为进一步外推,外推值趋向于0,此时意义不大,所以可以终止进一步的外推。

代码romberg.m:function [i,r,gi]=romberg(a,n)% input:a is the poly coefficient matrix% n is the order of integral% output:i--integral value% r is romberg matrix% gi is the Gini coefficientf=@(x1)polyval(a,x1);x=0;y=1;h=y-x; % h is the intal steplengthr=zeros(n+1,n+1); % initialize the romberg matrixr(1,1)=h*(f(x)+f(y))/2;for j=2:n+1; % calculate the first lineh=h/2;r(j,1)=r(j-1,1)/2+h*sum(f(x+h*(1:2:2^(j-1))));endfor k=2:n+1 % calculate the romberg matrixr(k:n+1,k)=r(k:n+1,k-1)+(r(k:n+1,k-1)-r(k-1:n,k-1))/(4^(k-1)-1);endi=vpa(r(n+1,n+1),5);gi=(0.5-i)/0.5;将上面得到的2012年的系数矩阵输入,可以得到结果:i =0.34238r =0.5001 0 0 0 00.3909 0.3545 0 0 00.3568 0.3455 0.3449 0 00.3462 0.3426 0.3424 0.3424 00.3433 0.3424 0.3424 0.3424 0.3424 gi =0.31524714285717436723643913865089可以得到2012年我国城镇居民的基尼系数为0.3152。

相关主题