• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

熵权法STATA程序(第二版修正)

武飞扬头像
Loken123
帮助1

熵权法STATA程序 (修正)

鉴于很多童鞋和我探讨关于上一版的熵权法问题,在这里我打算补充修正一下熵权法程序,补充如下:
(1)这一版可用于面板数据处理,处理方法是将面板数据视为截面,同一城市不同年份视为不同个体,这样保证了权重不会随时间变化。而且这并不影响我们指标合成的初衷。
(2)这一版使用城市环境相关数据为例子,相应数据可在城市统计年鉴搜索得到。
(3)熵权法只是计算指标的客观权重方法,下文程序第五步计算得分时大家可以使用不同的指标标准化方法,如功效系数法、当量准值法等,这里我用的是极差标准化,大家也可以同时考虑纵向比较和横向比较,并不唯一。
当然可能仍然存在很多问题,欢迎大家和我讨论。
by Linhao Cui

** step 1 指标的标准化处理
  egen m = count(id)
set trace on
global zlist " 一般工业固体废物综合利用率_百分比_全市_补齐 年末耕地总资源 工业二氧化硫去除量_吨_全市_补齐 工业废水排放达标量_万吨_全市_补齐 污水处理厂集中处理率_百分比_全市_补齐 工业烟粉尘去除量_吨_全市_补齐 生活垃圾无害化处理率_百分比_全市_补齐 生活污水处理率 环境污染治理占GDP比重 可吸入细颗粒物年平均浓度 空气质量达到及好于二级的天数占比 建成区绿化覆盖率_百分比_市辖区 地区生产总值增长率 科技教育比重 专利授权数 在岗职工平均工资_元_全市_补齐 每万人在校大学生数 第三产业增加值占GDP比重 每万人拥有公共汽车_辆_市辖区 体育场馆数 公共图书馆 博物馆数"

foreach x of global zlist{
  egen minn`x' = min(`x') 
  egen maxx`x' = max(`x') 
  gen standard`x' = (`x' - minn`x')/(maxx`x' - minn`x') //正向指标
  
}

foreach x of varlist 售水量_万吨_市辖区_补齐 能源消费量 电_补齐{
  egen minn`x' = min(`x') 
  egen maxx`x' = max(`x') 
  gen standard`x' = (maxx`x' - `x')/(maxx`x' - minn`x') //负向指标
  
}


global xlist "售水量_万吨_市辖区_补齐 能源消费量 一般工业固体废物综合利用率_百分比_全市_补齐 年末耕地总资源 电_补齐 工业二氧化硫去除量_吨_全市_补齐 工业废水排放达标量_万吨_全市_补齐 污水处理厂集中处理率_百分比_全市_补齐 工业烟粉尘去除量_吨_全市_补齐 生活垃圾无害化处理率_百分比_全市_补齐 生活污水处理率 可吸入细颗粒物年平均浓度 空气质量达到及好于二级的天数占比 建成区绿化覆盖率_百分比_市辖区 地区生产总值增长率 专利授权数 在岗职工平均工资_元_全市_补齐 每万人在校大学生数 第三产业增加值占GDP比重 每万人拥有公共汽车_辆_市辖区 体育场馆数 公共图书馆 博物馆数"


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

**step3 计算指标信息熵
foreach x of global xlist{
  egen he`x' = total(Y`x' * ln(Y`x'))
  gen e`x' = -(1/ln(m)) * he`x'
}

**step4 计算信息熵冗余度
foreach x of global xlist{
  gen d`x' = 1 - e`x'  //stata貌似循环有问题 如遇到not found问题不能运行可尝试手动计算 
  egen uselesshe = rowtotal(d售水量_万吨_市辖区_补齐 d能源消费量 d一般工业固体废物综合利用率_百分比_全市_补齐 d年末耕地总资源 d电_补齐 d工业二氧化硫去除量_吨_全市_补齐 d工业废水排放达标量_万吨_全市_补齐 d污水处理厂集中处理率_百分比_全市_补齐 d工业烟粉尘去除量_吨_全市_补齐 d生活垃圾无害化处理率_百分比_全市_补齐 d生活污水处理率  d可吸入细颗粒物年平均浓度 d空气质量达到及好于二级的天数占比 d建成区绿化覆盖率_百分比_市辖区 d地区生产总值增长率  d专利授权数 d在岗职工平均工资_元_全市_补齐 d每万人在校大学生数 d第三产业增加值占GDP比重 d每万人拥有公共汽车_辆_市辖区 d体育场馆数 d公共图书馆 d博物馆数)
  gen W`x' = d`x'/uselesshe
}

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




学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhggagjf
系列文章
更多 icon
同类精品
更多 icon
继续加载