问题标签 [gini]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
821 浏览

r - 计算 R 中多路拆分的基尼指数

我正在尝试计算 R 中的基尼指数。计算二叉决策树的基尼指数没有问题,如下所示。

现在我想计算具有三个节点(多路拆分)的决策树的基尼指数。
我得到了下表:

Car Class
0 0
0 1
1 0
1 0
2 1

是否可以计算 R 中 car 列(具有三个节点)的基尼指数?
是否也可以计算三个以上具有相同功能的节点的基尼指数?

0 投票
1 回答
734 浏览

tensorflow - python中使用keras的基尼系数

我想以基尼系数作为优化函数来计算简单的神经网络模型。这是我的 gini 函数:

这就是我编译模型的方式:

我总是收到此错误“ValueError:不支持任何值。”,谁能告诉我我的错误是什么?

0 投票
0 回答
229 浏览

r - 如何使用 R 中的 CART(包 rpart)成为每个可能的第一次拆分的 gini-index

我有一个包含超过 125 个变量的庞大数据集。

我正在应用 CART(分类和回归树)。我缺少的是所有可能的第一次拆分的列表,以及引用的 gini 值(如果您在 SAS 中应用 CART,则默认情况下您会成为这样的列表)。

有人知道如何成为这样的名单吗?

最好的问候,并感谢您的帮助,

塞缪尔

0 投票
1 回答
1123 浏览

r - R中的多样性布劳指数

我正在尝试在我的数据框上计算 R 中的 Blau 多样性指数(gini-simpson)。我为一个组中的每个人设置了 6 列,值范围为“学生”、“教师”、“校友”、“不适用”。如果组小于 6,则列内也有 NA。

我想计算不在每列内的行(整个组的多样性)的 Blau 索引,na.rm = TRUE。

有谁知道如何在 R 中做到这一点?

非常感谢!

有关数据框的图片,请参见此处

0 投票
1 回答
2789 浏览

python - Python中的加权基尼系数

这是 Python 中基尼系数的简单实现,来自https://stackoverflow.com/a/39513799/1840471

如何调整它以将权重数组作为第二个向量?这应该采用非整数权重,所以不要仅仅通过权重来炸毁数组。

例子:

0 投票
2 回答
4572 浏览

python - Python中更有效的加权基尼系数

根据https://stackoverflow.com/a/48981834/1840471,这是 Python 中加权基尼系数的实现:

这很干净,适用于中型阵列,但正如其最初的建议 ( https://stackoverflow.com/a/39513799/1840471 ) 中所警告的那样,它是 O(n 2 )。在我的计算机上,这意味着它会在 ~20k 行后中断:

这可以调整为适用于更大的数据集吗?我的是~150k行。

0 投票
0 回答
2635 浏览

r - 计算 R 中的 Gini 和 AUC,结果取决于变量的数量

我试图找到 R 函数来计算 R 中的基尼系数和 AUC。我找到了包ROCRMLmetrics. 通常您可以通过以下方式在 AUC 和 Gini 之间切换

基尼= 2 AUC -1

在以下示例中,这适用于 2 个解释变量的情况,但不适用于只有一个变量的情况。

这是包装中的缺陷吗?

会话信息是:

R 版本 3.4.3 (2017-11-30) 平台:x86_64-w64-mingw32/x64 (64-bit) 运行于:Windows 7 x64 (build 7601) Service Pack 1

矩阵产品:默认

语言环境:[1] LC_COLLATE=German_Austria.1252 LC_CTYPE=German_Austria.1252 [3] LC_MONETARY=German_Austria.1252 LC_NUMERIC=C [5] LC_TIME=German_Austria.1252

附加的基础包:[1] stats graphics grDevices utils
datasets methods base

其他附加包:[1] MLmetrics_1.1.1 ROCR_1.0-7
gplots_3.0.1

通过命名空间加载(未附加):[1] compiler_3.4.3
tools_3.4.3 KernSmooth_2.23-15 gdata_2.18.0 [5] caTools_1.17.1 bitops_1.0-6 pacman_0.4.6 gtools_3.5.0

0 投票
1 回答
104 浏览

r - R数据框未正确创建

我已经使用以下代码来获得随机森林的准确性平均下降

我通过上述过程创建了以下数据框

我可以通过 BBB$%IncMSE 和 BBB$IncNodePurity 获得第二列和第三列。我想根据未命名的第一列对 thsi 进行子集化。我无法做到这一点。将此数据帧写入 csv 文件时,它可以工作,并且所有三列都单独列出。但是,我无法将前两列分开。有什么办法可以做到这一点并重命名第一列。将感谢任何提供帮助的人

0 投票
1 回答
1133 浏览

python - 如何在 Scikit-Learn 中修改决策树算法中的分裂标准(基尼/熵)?

我在二元分类问题上使用决策树算法,目标是最大限度地减少分类的误报(最大化positive predicted value)(诊断工具的成本非常高)。

有没有办法引weight入基尼系数/熵分裂标准来惩罚误报错误分类?

例如,修改后的基尼指数为:

在此处输入图像描述

因此我想知道是否有任何方法可以在 Scikit-learn 中实现它?

编辑

玩弄class_weight产生了以下结果:

绘制决策边界和树蓝色为正(1)

在此处输入图像描述

在超过少数阶级(或更珍贵)的同时:

dt_100 = tree.DecisionTreeClassifier(max_depth=2, class_weight={1:100})

在此处输入图像描述

0 投票
2 回答
109 浏览

python - 找到 3 个具有相同(近似)基尼系数的子样本

假设我有一个N个人样本和一个随机变量X,代表他们的外币年收入。的一个例子X可能如下:

现在我应该“采样” 3个“有序”子组中的20组件X(不需要相同数量的组件),以便它们(大约)具有相同的基尼系数。

提醒一下基尼系数:只需计算每个收入占总收入的百分比(例如p1=1500/(1500+1100+...), p2=1100/(1500+1100+...), ..., p20=100/(1500+1100+...)),然后是累积百分比值(例如c1=0+p1, c2=p1+p2, ..., c20=p19+p20=1),然后计算下面的面积累积 ( A=(c1+...+c20-0.5)/(20)-0.5) ,因此是基尼系数G=2*A

这可以通过蛮力轻松完成:将样本一分为三,计算三个样本的基尼系数,并尝试从/移到中间样本的上下分量,以确定基尼系数的差异是改善还是恶化。但是,手动完成非常耗时(例如在 Excel 上),尤其是当我有一个非常大的数据集时。

我怀疑有一个更优雅的解决方案。我对Python和都持开放态度R

附加细节 输出将是这样的:X

对于G, 三个子组的实际基尼系数