楼主: cqren
3798 2

[问答] 非常急,怎么用核密度函数求基尼系数和泰尔指数!!方法思路和matlab具体命令是什么啊 [推广有奖]

  • 0关注
  • 1粉丝

硕士生

81%

还不是VIP/贵宾

-

威望
0
论坛币
9 个
通用积分
2.5018
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
100 点
帖子
28
精华
0
在线时间
375 小时
注册时间
2005-10-11
最后登录
2026-1-8

楼主
cqren 发表于 2017-4-9 20:23:57 |AI写论文
100论坛币
我现在已知各省农村和城镇的人均收入x1 x2 x3 x4...和各省农村和城镇的人口数N1 N2 N3... 想用高斯核密度方法求基尼系数,我用matlab求,可怎么也求不出来,按照核估计的方法,窗宽值我已经确定 用matlab也把图形都画出来了,可怎么也不会求基尼系数和泰尔指数,我是利用这个连续分布函数的方法去求的,其中G就是基尼系数,I就是泰尔指数,高斯核密度函数的积分只能用int(w1*gaussmf(x[x1 h])+w2*gaussmf(x[x2 h])+...wn*gaussmf(x[xn h])表示,就是因为没有具体表达式,这个地方还要对1-F(x)的平方进行积分,用了matlab求不出来啊,原本以为泰尔指数好求,只要对x*f(x)和log(x)*f(x)进行积分就好,但是matlab竟然求不出log(x)*f(x),我的命令时syms x....... Y=f(x)*log(x);int(Y,x,0,1200000)可返回的结果还是一个关于x的表达式,而且非常非常长,所以求各位大神告诉我错在哪里,怎么求基尼系数和泰尔指数, 基尼系数和泰尔指数表达式 具体matlab命令时什么,感激不尽!!!

最佳答案

幻月黄昏 查看完整内容

泰尔指数脚本: 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个个体的 ...
关键词:MATLAB atlab matla 核密度函数 基尼系数 高斯 中国故事 公开课 基尼系数 人均收入

沙发
幻月黄昏 发表于 2017-4-9 20:23:58
泰尔指数脚本:
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)
已有 1 人评分论坛币 收起 理由
admin_kefu + 30 热心帮助其他会员

总评分: 论坛币 + 30   查看全部评分

藤椅
tianxiaqingquan 发表于 2017-7-18 19:44:12
请问你知道怎么计算了吗?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-17 04:21