1320 1

[数据挖掘理论与案例] stata熵权法 [推广有奖]

  • 0关注
  • 0粉丝

初中生

4%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
1.5085
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
76 点
帖子
4
精华
0
在线时间
15 小时
注册时间
2022-4-25
最后登录
2023-9-10

楼主
奥狄斯的乔小熊 发表于 2023-3-27 13:05:28 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
经济发展质量指标.xlsx (10.77 KB) 各位大佬求求了!!运行到刚开头红色部分提示variable not found,反正就是进行不下去!!**熵权法
** step 1 指标的标准化处理
global positive_var "第一产业增加值指数 第二产业增加值指数 第三产业增加值指数        人均国内生产总值 第三产业对GDP的贡献率 技术市场成交额占GDP比重 万人专利申请授权数 城镇登记失业率 城镇单位就业人员平均工资 每万人医疗机构床位数 工业污染源治理投资/GDP 治理废水项目完成投资/GDP 治理固体废物项目完成投资/GDP 单位GDP电耗"
global negative_var "居民消费价格指数 工业生产者出厂价格指数 二氧化硫排放量/GDP"
global all_var $positive_var$negative_var
foreach i of $positive_var{
        qui sum `i'
        gen x_`i'=(`i'-r(min))/(r(max)-r(min))  //正向指标
        replace x`i'=0.00001 if x`i'==0
}
foreach i in $negative_var{
        qui sum `i'
        gen x_`i'=(r(max)-`i')/(r(max)-r(min))  //负向指标
        replace x`i'=0.00001 if x`i'==0
}

** step 2 计算指标的比重
foreach i in $all_var {
        egen `i'_sum=sum(x_`i')
        gen y_`i'=x_`i'/`i'_sum
}

**step3 计算指标信息熵
gen n=_N
foreach i in $all_var {
        gen y_lny`i'=y_`i'*ln(y_`i')
        replace y_lny_`i'=0 if x_`i'==0
}

**step4 求和
foreach i in $all_var {
        egen y_lny_`i'_sum = sum(y_lny_`i')
}

**step5 计算各指标的贡献总量,熵值ej
foreach i in $all_var {
        gen E_`i'=-1/ln(n)*y_lny_`i'_sum
}

**step6 计算各指标的权重,差异系数d
foreach i in $all_var {
        gen d_`i' = 1-E_`i'
}
egen d_sum = rowtotal(d_*)
foreach i in $all_var {
        gen W_`i' = d_`i'/d_sum
}
egen W= rowtotal(W_*)

**step7 计算指标综合得分
foreach i in $all_var {
        gen Score_`i' = x_`i'*W_`i
}
egen Score= rowtotal(Score_*)


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Stata tata 熵权法 positive negative Stata 熵权法

沙发
三重虫 发表于 2023-3-27 18:50:27
谢谢分享!

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

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