补充更方便使用的R语言版本:张敬信:【R语言】泰尔指数及其分解​zhuanlan.zhihu.com

前言

最近查一点泰尔指数的资料,发现无论是公式还是软件实现,都说的特别乱,看不出所以然。

特整理了该内容,并用Matlab软件给出了实现的代码。

一.泰尔指数

泰尔指数(Theil index)或者泰尔熵标准(Theil’s entropy measure)泰是由泰尔(Theil,1967)利用信息理论中的熵概念来计算收入不平等而得名。

熵在信息论中被称为平均信息量。在信息理论中,假定某事件E将以某概率p发生,而后收到一条确定消息证实该事件E的发生,则此消息所包含的信息量用公式可以表示为:

设某完备事件组由各自发生概率依次为

, 由n个事件

构成,则有

, 熵或者期望信息量等于各事件的信息量与其相应概率乘积的总和:

将信息理论中的熵指数概念用于收入差距的测度时,可将收入差距的测度解释为将人口份额转化为收入份额(类似于洛伦兹曲线中将人口累计百分比信息转化为收入累计百分比)的消息所包含的信息量。而泰尔指数只是熵指数中的一个应用最广泛的特例。泰尔指数的表达式为:

其中,

为收入差距程度的测度泰尔指数,

表示第

个体的收入,

表示所有个体的平均收入。

对于分组数据,泰尔指数有另一种表达式:

其中,

表示第

组收入占总收入的比重,

表示第

组人口数占总人口数的比重。

例1.

(I) 按公式(2)计算:

functionT=Theil2(x)%函数Theil2()计算泰尔指数, 反映收入水平的差异

%其中,x为n个个体的收入

xx=x./mean(x);

T=mean(xx.*log(xx));

主程序:

y2=[10 10 8 8 8 8 6 6 6 6 6 6 4 4 4 4 2 2];

%每个个体的收入(万美元)

T2=Theil2(y2)

运行结果:

T2 = 0.0791

(II) 按公式(3)计算:

functionT=Theil(y,p)%函数Theil()计算泰尔指数, 反映收入水平的差异

%其中,y为各组的平均收入; p为各组包含的个体数

w=y.*p/sum(y.*p);

e=p./sum(p);

T=sum(w.*log(w./e));

主程序:

y=[10 8 6 4 2]; %各组的平均收入(万美元)

p=[2 4 6 4 2]; %各组包含的个体数

T=Theil(y,p)

运行结果:

T = 0.0791

二. 泰尔指数分解法

泰尔指数作为收入不平等程度的测度指标具备良好的可分解性质,即将样本分为多个群组时,泰尔指数可以分别衡量组内差距与组间差距对总差距的贡献。假设包含

个个体的样本被分为

个群组,每组分别为

,第

中的个体数目为

,则有

.

表示个体

的收入份额(占总收入的比例),

表示第

组的收入份额(占总收入的比例)

分别为组间差距和组内差距,则可将泰尔指数分解如下:

在上式中组间差距与组内差距分别有如下表达式:

其中,

为第k组的组内差距(k=1,...K).

进一步,可以计算第k组组内差距的贡献率和组间差距的贡献率:

另外,值得注意的是组内差距项分别由各组的组内差距之和构成,各组的组内差距的计算公式与样本总体的计算公式并无二致,只是将样本容量控制在第k组的个体数目。

例2还是例1的数据,计算组间差距与组内差距,验证泰尔指数

function[Tb,Tw,T,z,Db,Dw]=TbTw(x,n)%函数TbTw()计算泰尔指数分解

%返回Tb为组间差距, Tw为组内差距, z为各个组内差距,

%返回T为泰尔指数, Db为组间贡献率, Dw为各个组内贡献率

%泰尔指数T=Tb+Tw

%x为N个个体的收入向量, 依次分为K个分组, n=[n1,...,nK]为各分组的个体数向量, sum(n)=N

K=length(n);

s=[0,cumsum(n)];

for k=1:K

X{k}=x(s(k)+1:s(k+1))./sum(x); %X{k}为第k个分组的nk个个体的收入份额(占总收入的比例)

y(k)=sum(X{k}); %y(k)为第k组的收入份额(占总收入的比例)

end

Tb=sum(y.*log(y./(n./length(x)))); %组间差距

for k=1:K

z(k)=sum((X{k}./y(k)).*log(n(k)*X{k}./y(k))); %第k组的组内差距

end

Tw=sum(y.*z); %总的组内差距为各分组组内差距的加权和

T=Tb+Tw; %泰尔指数

Db=Tb/T; %组间贡献率

Dw=y.*z/T; %各分组内的组内贡献率

主程序:

x=[10 10 8 8 8 8 6 6 6 6 6 6 4 4 4 4 2 2];

%每个个体的收入(万美元)

n=[2 4 6 4 2]; %各分组的个体数

[Tb,Tw,T,z,Db,Dw]=TbTw(x,n)

运行结果:

Tb

= 0.0791

Tw

= -3.7007e-17

T

= 0.0791

z

= 1.0e-15 *

0 0

-0.1110 0 0

Db

= 1.0000

Dw

= 1.0e-15 *

0 0

-0.4680 0 0

说明:由于该例中,每个分组内各个个体的收入是相同的,故每个分组的组内差距为0,总的组内差距Tw也为0,结果中的-3.7007e-17是由于Matlab中的双精度误差造成的,相当于是0.

例3 修改例1中的数据,让各分组的个体收入不相等,继续测试上述算法。

原第1组:10、10,改为9.5、10.5

原第2组:8、8、8、8,改为7、9、7.5、8.5

原第3组:6、6、6、6、6、6改为5、7、5.5、6.5、6、6

原第4组:4、4、4、4改为3、5、3.5、4.5

原第5组:1.5、2.5

主程序:

x2=[9.5 10.5 7 9 7.5 8.5 5 7 5.5 6.5 6 6 3 5 3.5 4.5 1.5 2.5]; %每个个体的收入(万美元)

n=[2 4 6 4 2]; %各分组的个体数

[Tb,Tw,T,z,Db,Dw]=TbTw(x2,n)

运行结果:

Tb

= 0.0791

Tw

= 0.0077

T

= 0.0868

z

= 0.0013 0.0049

0.0058 0.0197 0.0316

Db

= 0.9112

Dw

= 0.0027 0.0167

0.0223 0.0336 0.0135

作者:张敬信

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

泰尔指数r语言_【数学建模】泰尔指数及分解的计算方法与Matlab实现相关推荐

  1. 泰尔指数r语言_还在用Excel算区位基尼系数?用geo.gini吧!

    区域经济研究中,经常需要测度产业空间集中的程度,常用的指标有区位基尼系数(Locational GiniCoefficient).泰尔指数(Theil Index)和EG指数等.这一期先讲区位基尼系数 ...

  2. 泰尔指数r语言_一招搞定泰尔指数及其分解

    上期讲了区位基尼系数,这期讲讲泰尔指数. 泰尔指数的原理同基尼系数,都是在测度一组数据分布的差异性.但是其有着良好的可分解性质,因此当需要考察产业空间集中度在不同区域层面的差异来源时,比较常用. 一. ...

  3. 泰尔指数r语言_科学网-一招搞定泰尔指数及其分解-王庆喜的博文

    一招搞定泰尔指数及其分解 上期讲了区位基尼系数,这期讲讲泰尔指数. 泰尔指数的原理同基尼系数,都是在测度一组数据分布的差异性.但是其有着良好的可分解性质,因此当需要考察产业空间集中度在不同区域层面的差 ...

  4. moran指数 r语言_新版白话空间统计(19)空间关系对莫兰指数的影响

    前文再续,书接上一回. 上一回我们说到用GeoDa可以自定义空间权重矩阵和空间关系,那么空间关系到底在我们的分析中,会产生什么样的影响呢?今天我们通过一个简单的例子来给大家示例一下: 首先我们用常规的 ...

  5. moran指数 r语言_白话空间统计之二十五:空间权重矩阵(四)R语言中的空间权重矩阵(2):不同空间关系对莫兰指数的影响...

    原标题:白话空间统计之二十五:空间权重矩阵(四)R语言中的空间权重矩阵(2):不同空间关系对莫兰指数的影响 上一篇,讲了R语言中的空间权重矩阵的结构,这一节讲讲R语言里面空间权重矩阵的自定义. 与Ar ...

  6. moran指数 r语言_使用R进行空间自相关检验

    「全局溢出」当一个区域的特征变化影响到所有区域的结果时,就会产生全局溢出效应.这甚至适用于区域本身,因为影响可以传递到邻居并返回到自己的区域(反馈).具体来说,全球溢出效应影响到邻居.邻居到邻居.邻居 ...

  7. R语言量化技术分析的百度指数关注度交易策略可视化

    全文链接:http://tecdat.cn/?p=31556 传统的经济理论认为股票市场是有效的,价格波动是对市场信息的反应,投资者能够及时处理所有实时信息并做出最优决策(点击文末"阅读原文 ...

  8. 图书销量时间序列预测_数学建模_Prophet实现

    图书销量时间序列预测_数学建模_Prophet实现 前言 主要参考 代码 库导入与函数设置 导库 展示函数 取数据函数 训练函数 评估函数 数据预处理 数据集划分 数据分布查看 销售曲线查看 销售预测 ...

  9. 数学建模overleaf模板_数学建模从入门到精通必备资料,大神经验助你赢战9月数模国赛!...

    假如你对自己心仪的另一半,有一个具体的判断标准,那么,你能否算出你在未来遇到理想型的概率有多大? 这个看似复杂的问题,或许可以用数学建模帮助解决,简化和抽象的能力不仅是数学建模的本质,也是申请海外名校 ...

最新文章

  1. CSS导航条菜单:带小三角形
  2. php文字超链接怎么写,php 文本URL转换为超链接功能实例
  3. 为什么你总成为不了架构师?
  4. [转]边框回归(Bounding Box Regression)详解
  5. 描述项目的典型用户与场景
  6. bizagi simulation 仿真学习
  7. Git笔记(5) 状态记录
  8. 2021 年高教社杯全国大学生数学建模竞赛题目(B 题 乙醇偶合制备 C4 烯烃)
  9. D-LINK二层交换机Asymmetric VLAN配置
  10. HWDB数据集gnt格式转为png格式
  11. birt字体 linux,linux下birt 图表中文乱码问题
  12. 四月Google份额继续上升 微软收购雅虎势在必行
  13. Spanning-tree fast features配置案例
  14. 【Mixamo】记录mixamo导出动画踩的坑
  15. msp430单片机c语言应用程序,MSP430单片机C语言应用程序设计实例精讲
  16. 【论文阅读】DeepGauge: multi-granularity testing criteria for deep learning systems.
  17. 斗破苍穹文字页游php_《斗破苍穹》官方网站! - 页游 - 可以阅读的网页游戏[YeGame.COM]...
  18. securecrt下传输大文件
  19. 为啥中国移动免费宽带突然不香了, 背后的猫腻,你知道吗?
  20. 大数开根号(蓝桥杯-矩阵翻硬币)

热门文章

  1. 什么样的薪资能让你接受 996?
  2. java ec_Java ECKey.setB方法代码示例
  3. sql注入php代码审计1
  4. ibatis读写oracle的clob字段
  5. 小白laravel入门
  6. Win7 查看端口占用的进程,并根据进程id杀死进程。
  7. 2023年收银管理系统排行榜新鲜出炉
  8. Pytorch加载预训练网络,替换分类层并重新训练
  9. 无失真压缩法可以减少冗余_多媒体压缩技术概念 多媒体的基本概念
  10. html+css提示框/弹窗公告实例【记录】