楼主: 懂了DL
5680 17

[统计软件与数据分析] 熵值法 权重为负 到底是因为什么呢? 命令是对的 变量也是连续型 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

硕士生

40%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
65.1363
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
436 点
帖子
35
精华
0
在线时间
292 小时
注册时间
2018-11-19
最后登录
2023-4-18

楼主
懂了DL 学生认证  发表于 2023-1-26 11:00:47 |AI写论文
1论坛币
熵值法计算指标 期间总是有部分指标权重为负 思考很久依旧找不出原因 本人做出以下努力:
1.对变量进行截尾处理
2.check 命令 应该没有错误
3.考虑到可能数据类型包括连续型和有序型(1、2、3、4),将有序型去除,仅保留连续型
虽然做了以上的工作 但是依旧有权重为负(信息熵大于1)的结果
以下附上熵值法的命令和部分样本数据 恳请大佬能答疑解惑。






关键词:连续型 熵值法 check 指标权重 数据类型
已有 1 人评分经验 收起 理由
kychan + 50 鼓励积极发帖讨论

总评分: 经验 + 50   查看全部评分

沙发
懂了DL 学生认证  发表于 2023-1-26 11:03:09
{
global negative_var "GHI GHC GHP"

//下面的不变,包括正负项指标
        foreach i in $negative_var {
                qui sum `i'
                gen x_`i'=(r(max)-`i')/(r(max)-r(min))
        }
        //计算各指标的比重
        foreach i in $negative_var {
                egen `i'_sum=sum(x_`i')
                gen y1_`i'=x_`i'/`i'_sum
        }
       
        //根据比重计算各分量的信息熵
        gen n=_N

        foreach i in $negative_var {
            gen y_`i'=y1_`i'+0.00001
                gen y_lny_`i'=y_`i'*ln(y_`i')
        }
        //求和
        foreach i in $negative_var {
                egen y_lny_`i'_sum=sum(y_lny_`i')
        }
        //计算各指标的贡献总量 熵值ej
        foreach i in $negative_var {
                gen E_`i'= -1/ln(n)*y_lny_`i'_sum
        }
        //计算各指标的权重,差异系数d
        foreach i in $negative_var {
                gen d_`i'= 1-E_`i'
        }
       
        egen d_sum = rowtotal(d_*)
        foreach i in $negative_var {
                gen W_`i'= d_`i'/d_sum
               
        }
        egen W=rowtotal(W_*)
        //计算综合得分
        foreach i in $negative_var {
                gen Score_`i'= x_`i'*W_`i'
        }
        egen Score=rowtotal(Score_*)
}

藤椅
懂了DL 学生认证  发表于 2023-1-26 11:04:09
x_GHI        x_GHC        x_GHP        GHI_sum        y1_GHI        GHC_sum        y1_GHC        GHP_sum        y1_GHP
.0761846        .3441194        .0009168        1937.523        .0000393        1390.086        .0002476        1086.872        8.44e-07
.0761846        .3441194        .0009168        1937.523        .0000393        1390.086        .0002476        1086.872        8.44e-07
.0761846        .3441194        .0009168        1937.523        .0000393        1390.086        .0002476        1086.872        8.44e-07
.0761846        .3441194        .0009168        1937.523        .0000393        1390.086        .0002476        1086.872        8.44e-07

板凳
懂了DL 学生认证  发表于 2023-1-26 11:04:33
n        y_GHI        y_lny_GHI        y_GHC        y_lny_GHC        y_GHP        y_lny_GHP        y_lny_GHI_sum        y_lny_GHC_sum
3592        .0000493        -.0004891        .0002576        -.0021285        .0000108        -.000124        -8.319627        -8.276761
3592        .0000493        -.0004891        .0002576        -.0021285        .0000108        -.000124        -8.319627        -8.276761
3592        .0000493        -.0004891        .0002576        -.0021285        .0000108        -.000124        -8.319627        -8.276761
3592        .0000493        -.0004891        .0002576        -.0021285        .0000108        -.000124        -8.319627        -8.276761

报纸
懂了DL 学生认证  发表于 2023-1-26 11:04:53
y_lny_GHP_sum        E_GHI        E_GHC        E_GHP        d_GHI        d_GHC        d_GHP        d_sum
-8.17789        1.016266        1.01103        .9989526        -.0162661        -.01103        .0010474        -.0262486
-8.17789        1.016266        1.01103        .9989526        -.0162661        -.01103        .0010474        -.0262486
-8.17789        1.016266        1.01103        .9989526        -.0162661        -.01103        .0010474        -.0262486
-8.17789        1.016266        1.01103        .9989526        -.0162661        -.01103        .0010474        -.0262486

地板
懂了DL 学生认证  发表于 2023-1-26 11:05:11
W_GHI        W_GHC        W_GHP        W        Score_GHI        Score_GHC        Score_GHP        Score
.6196935        .4202108        -.0399043        1        .0472111        .1446027        -.0000366        .1917772
.6196935        .4202108        -.0399043        1        .0472111        .1446027        -.0000366        .1917772
.6196935        .4202108        -.0399043        1        .0472111        .1446027        -.0000366        .1917772
.6196935        .4202108        -.0399043        1        .0472111        .1446027        -.0000366        .1917772
.6196935        .4202108        -.0399043        1        .0472111        .1446027        -.0000366        .1917772

7
懂了DL 学生认证  发表于 2023-1-26 11:48:04
我找到问题了 因为我的左移出现了问题 这个是我在标准的命令上面改的 其实不用改动就行 换成仅对等于0 的数值进行平移就行

8
懂了DL 学生认证  发表于 2023-1-26 11:50:04
顺便附上熵值法命令 b站一位up主分享的
global positive_var x1 x4 x6 x7 x8 x10 x12 x14 x15
global negative_var x2 x3 x5 x9 x11 x13

//下面的不变,包括正负项指标
global all_var $positive_var $negative_var
        foreach i in $positive_var {
                qui sum `i'
                gen x_`i'=(`i'-r(min))/(r(max)-r(min))
        }
        foreach i in $negative_var {
                qui sum `i'
                gen x_`i'=(r(max)-`i')/(r(max)-r(min))
        }
        //计算各指标的比重
        foreach i in $all_var {
                egen `i'_sum=sum(x_`i')
                gen y_`i'=x_`i'/`i'_sum
        }
       
        //根据比重计算各分量的信息熵
        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
        }
        //求和
        foreach i in $all_var {
                egen y_lny_`i'_sum=sum(y_lny_`i')
        }
        //计算各指标的贡献总量。熵值ej
        foreach i in $all_var {
                gen E_`i'= -1/ln(n)*y_lny_`i'_sum
        }
        //计算各指标的权重,差异系数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_*)
        //计算综合得分
        foreach i in $all_var {
                gen Score_`i'= x_`i'*W_`i'
        }
        egen Score=rowtotal(Score_*)

9
HappyAndy_Lo 发表于 2023-1-27 11:29:50

10
albertwishedu 发表于 2023-1-27 11:30:16

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

本版微信群
扫码
拉您进交流群
GMT+8, 2026-2-3 17:12