美文网首页GIS之时空数据分析
Python 基尼系数 属性值为负值(二)

Python 基尼系数 属性值为负值(二)

作者: 王叽叽的小心情 | 来源:发表于2020-07-01 10:54 被阅读0次

上一篇中提到针对升序排序的正值的列表如何计算基尼系数,但是实际应用中会遇到属性值为负值的情况,同时还有加权的情况(上一篇中的代码可以设置权重)。

查找了一下,发现R中有一个对此进行改进的包GiniWegNeg(Computing the Gini-Based Coefficients for Weighted and Negative Attributes),该包主要有两个函数,一个是Gini_CTR_BS(),该函数是基于Chen, Tasur and Rhai (1982)文章的方法, 并进一步被Berebbei and Silber (1985)改进。另一个函数Gini_RSV,该函数是由该R包的作者(Emanuela Raffinetti emanuela.raffinetti@unimi.it)提出,他在2015年的时候提出了另外一种计算方法(负值和正值的总和分别设置为1等,具体可以看原文章)。

  1. 安装GiniWegNeg包
    在R中需要安装,可以查看具体的函数
install.packages("GiniWegNeg")
library(GiniWegNeg)
help(GiniWegNeg)

说明文档:Package ‘GiniWegNeg’说明文档

  1. 使用方法
    以中国的经济复杂度和多样性指标为例,进行计算,其中经济复杂度指标存在正值和负值,多样性指标在(0,1)之间,不存在负值情况,因此可以作为衡量两个函数Gini_CTR_BS和Gini_RSV的计算结果的基准。
#加载所需的包
library(GiniWegNeg)
library(data.table)

#设置当前工作路径
setwd("E:\\China Economics\\1 Economic complexity and diversity\\Code\\")

#读取经复杂度文件
df <- read.csv("E:\\China Economics\\Data\\Statistics\\year_ECI_city_size.csv", header=TRUE, sep=',')

#计算经济复杂度的基尼系数
gini_ECI_CTR_BS <- list()
gini_ECI_RSV <- list()

for(i in 0:15){
  field = paste('X', 2000+i,sep = "", collapse = "")
  gini_ECI_CTR_BS[i+1] <- Gini_CTR_BS(df[field])
  gini_ECI_RSV[i+1] <- Gini_RSV(df[field])
}

# 计算经济多样性
#读取经济多样性文件
df2 <- read.csv("E:\\China Economics\\1 Economic complexity and diversity\\Data\\year_diversity_norm3_del_marco_and_sansha.csv", 
                header=TRUE, sep=',')

#计算基尼系数
gini_divers_CTR_BS <- list()
gini_divers_RSV <- list()

for(i in 0:15){
  field = paste('X', 2000+i, sep = "", collapse = "")
  gini_divers_CTR_BS[i+1] <- Gini_CTR_BS(df2[field])
  gini_divers_RSV[i+1] <- Gini_RSV(df2[field])
}

接下来查看下两个函数计算的结果,对于属性全为正值的数据,计算结果是一样的,懒得画图了,截个图,


经济多样性的基尼系数,两个函数结果一致

但是对于存在负值的属性,两个函数的结果就不一样了,且趋势也不一致,一个增加,一个减少


经济复杂度计的基尼系数,结果不一致
  1. 再生问题
    所以针对存在负值的属性,两个函数计算结果不一致,这不得让人纠结应该如何选择,同时更进一步思考,基尼系数对于人为构造的已进行归一化的变量是否实用,继续做点调研,回去看看它提出的初衷,再回来看看。

相关文章

  • Python 基尼系数 属性值为负值(二)

    上一篇中提到针对升序排序的正值的列表如何计算基尼系数,但是实际应用中会遇到属性值为负值的情况,同时还有加权的情况(...

  • dagum基尼系数分析

    SPSSAU-在线SPSS分析软件 Dagum系数分析 Dagum基尼系数是传统基尼gini系数的升级,其可分解为...

  • JQuery点击元素显示出来内容

    我需要注意什么:1.text-indent属性是控制文本缩进的,但是设置属性值为负值时,文本向左侧缩进,当负值过小...

  • 基尼系数

    今天听到一个词,读书时学过的: “基尼系数”。 据学者分析,目前我们的基尼系数在0.4左右。 需要控制,将系数往下...

  • 基尼系数

    国际上基尼系数平均在0.2~0.4之间,而国内超过这个系数,那也就是说贫富差距比较大,而且那还是2014年...

  • 【基尼系数】

    基尼系数是量度贫富悬殊程度的标量。它的定义如下:我们首先收集社会上每一个人的总财富额,把它从少至大排序,计算它的累...

  • 基尼系数

    基尼系数:1943年美国经济学家阿尔伯特.赫希曼根据洛伦兹曲线所定义的判断收入分配公平程度的指标。 基尼系数是比例...

  • 基尼系数

    下面是基尼系数的百度定义 基尼系数(英文:Gini index、Gini Coefficient)是指国际上通用的...

  • 【AI基础】基尼系数与基尼不纯度

    学过决策树的人大概都知道,构造树可以用基尼系数。那问题来了,衡量收入分配差异也可以用基尼系数,这两个基尼系数计算过...

  • Python 基尼系数(Gini coefficient)(一)

    定义:基尼系数是指国际上通用的、用以衡量一个国家或地区居民收入差距的常用指标。目的:查看一个国家贫富差距的程度。提...

网友评论

    本文标题:Python 基尼系数 属性值为负值(二)

    本文链接:https://www.haomeiwen.com/subject/tlggxktx.html