我想使用Gini()
from计算基尼系数DescTools
(因为它提供了一种简单的方法来计算具有权重、置信区间等的“无偏”基尼系数),但是当我将此函数与“大”样本一起使用时会出现一些错误。这是一个在我这边产生错误的简单示例:
library("DescTools")
x1 <- sample(c(1:100000), 50) #Here I create a sample of 50 cases varying from 1 to 100,000
Gini(x1) #Here I use the Gini function without any parameters, and it returns the Gini coefficient as expected:
[1] 0.3153713
x2 <- sample(c(1:100000), 500) #Now, I create a sample of 500 cases varying from 1 to 100,000
Gini(x2) #And if I compute the Gini coefficient with the same parameters, I get the following error:
[1] NA
警告消息:1:在 sum(x * 1:n) 中:整数溢出 - 使用 sum(as.numeric(.)) 2:在 n * sum(x) 中:整数溢出产生的 NA
我不知道是什么问题,有什么想法吗?我正在使用 R 版本 3.3.1 (2016-06-21)——“你头发上的虫子”和 RStudio 版本 0.99.903 和“DescTools”版本 0.99.17。
编辑:哦,好吧,将我的数字从整数转换为数字似乎可以完成这项工作(但我仍然不明白,无论如何......):
x2 <- as.numeric(x2) #Now, Gini() will work...