熵权法stata程序

  • Edited by Linhao Cui. 公式部分参考:(https://wenku.baidu.com/view/a2600818bd64783e09122bf6.html)
  • 仅供学习交流使用,如有疑问或者问题,欢迎质疑讨论,如有侵权 请联系撤回。

(1)数据标准化处理
正 向 指 标 X i j = X i j − m i n ( X j ) m a x ( X j ) − m i n ( X j ) 负 指 标 X i j = m a x ( X j ) − X i j m a x ( X j ) − m i n ( X j ) 正向指标 X_{ij} = \frac {X_{ij} - min(X_j)} {max(X_j) - min(X_j)} \\ 负指标 X_{ij} = \frac {max(X_{j}) - X_{ij}} {max(X_j) - min(X_j)}Xij=max(Xj)min(Xj)Xijmin(Xj)Xij=max(Xj)min(Xj)max(Xj)Xij
(2)计算第i年第j项指标值的比重:
Y i j = X i j ∑ i m X i j Y_{ij} = \frac {X_{ij}} {\sum_i^m X_{ij}}Yij=imXijXij
(3)计算指标信息熵
e j = − k ∑ i m ( Y i j × l n Y i j ) e_j = -k \sum_i^m(Y_{ij} \times lnY_{ij})ej=kim(Yij×lnYij)
(4)计算信息熵冗余度:
d j = 1 − e j d_j = 1 - e_jdj=1ej
(5) 计算指标权重:
W i = d j / ∑ j n d j W_i = d_j / \sum_j^n d_jWi=dj/jndj
(6)单项指标评价得分
S i j = W i × X i j S_{ij} = W_i \times X_{ij}Sij=Wi×Xij
其中,X i j X_{ij}Xij 代表第i年第j项评价指标的数值,k= 1/lnm , m为评价年数,n为指标个数

**熵权法 
** step 1 指标的标准化处理
 by 地区,sort: egen m = count(年份)
global xlist " 高耗能工业利息 环保企业资产 高耗能行业资产 高耗能工业利息占比 环保企业资产占比 高耗能产业资产占比 绿色信贷发展水平 治污投资比 碳排放强度 绿色保险赔付率 绿色保险规模比"
foreach x of global xlist{
  bys 地区 年份, sort: egen minn`x' = min(`x') 
  bys 地区 年份, sort: egen maxx`x' = max(`x') 
  gen standard`x' = (`x' - minn`x')/ (maxx`x' - minn`x') if `x' > = 0 // 正向指标
  
}

** step 2 计算第i年第j项指标的比重
foreach x of global xlist {
  by 地区,sort: egen summm`x' = total(`x') 
  gen Y`x' = standard`x' / summm`x'
}

**step3 计算指标信息熵
foreach x of global xlist{
  bys 地区 年份, sort: egen he`x' = total(Y`x' * ln(Y`x'))
  gen e`x' = - log(m) * he`x'
}

**step4 计算信息熵冗余度
foreach x of global xlist{
  gen d`x' = 1 - e`x'
  by 地区,sort: egen uselesshe`x' = total(d`x')
  gen W`x' = d`x' / uselesshe`x'
}

**step5 计算指标综合得分
foreach x of global xlist {
  gen S`x' = W`x' * `x'
}

版权声明:本文为Loken123原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。