问题标签 [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.
r - 计算 R 中多路拆分的基尼指数
我正在尝试计算 R 中的基尼指数。计算二叉决策树的基尼指数没有问题,如下所示。
现在我想计算具有三个节点(多路拆分)的决策树的基尼指数。
我得到了下表:
Car Class
0 0
0 1
1 0
1 0
2 1
是否可以计算 R 中 car 列(具有三个节点)的基尼指数?
是否也可以计算三个以上具有相同功能的节点的基尼指数?
tensorflow - python中使用keras的基尼系数
我想以基尼系数作为优化函数来计算简单的神经网络模型。这是我的 gini 函数:
这就是我编译模型的方式:
我总是收到此错误“ValueError:不支持任何值。”,谁能告诉我我的错误是什么?
r - 如何使用 R 中的 CART(包 rpart)成为每个可能的第一次拆分的 gini-index
我有一个包含超过 125 个变量的庞大数据集。
我正在应用 CART(分类和回归树)。我缺少的是所有可能的第一次拆分的列表,以及引用的 gini 值(如果您在 SAS 中应用 CART,则默认情况下您会成为这样的列表)。
有人知道如何成为这样的名单吗?
最好的问候,并感谢您的帮助,
塞缪尔
r - R中的多样性布劳指数
我正在尝试在我的数据框上计算 R 中的 Blau 多样性指数(gini-simpson)。我为一个组中的每个人设置了 6 列,值范围为“学生”、“教师”、“校友”、“不适用”。如果组小于 6,则列内也有 NA。
我想计算不在每列内的行(整个组的多样性)的 Blau 索引,na.rm = TRUE。
有谁知道如何在 R 中做到这一点?
非常感谢!
python - Python中的加权基尼系数
这是 Python 中基尼系数的简单实现,来自https://stackoverflow.com/a/39513799/1840471:
如何调整它以将权重数组作为第二个向量?这应该采用非整数权重,所以不要仅仅通过权重来炸毁数组。
例子:
python - Python中更有效的加权基尼系数
根据https://stackoverflow.com/a/48981834/1840471,这是 Python 中加权基尼系数的实现:
这很干净,适用于中型阵列,但正如其最初的建议 ( https://stackoverflow.com/a/39513799/1840471 ) 中所警告的那样,它是 O(n 2 )。在我的计算机上,这意味着它会在 ~20k 行后中断:
这可以调整为适用于更大的数据集吗?我的是~150k行。
r - 计算 R 中的 Gini 和 AUC,结果取决于变量的数量
我试图找到 R 函数来计算 R 中的基尼系数和 AUC。我找到了包ROCR
和MLmetrics
. 通常您可以通过以下方式在 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
r - R数据框未正确创建
我已经使用以下代码来获得随机森林的准确性平均下降
我通过上述过程创建了以下数据框
我可以通过 BBB$%IncMSE 和 BBB$IncNodePurity 获得第二列和第三列。我想根据未命名的第一列对 thsi 进行子集化。我无法做到这一点。将此数据帧写入 csv 文件时,它可以工作,并且所有三列都单独列出。但是,我无法将前两列分开。有什么办法可以做到这一点并重命名第一列。将感谢任何提供帮助的人
python - 如何在 Scikit-Learn 中修改决策树算法中的分裂标准(基尼/熵)?
我在二元分类问题上使用决策树算法,目标是最大限度地减少分类的误报(最大化positive predicted value
)(诊断工具的成本非常高)。
有没有办法引weight
入基尼系数/熵分裂标准来惩罚误报错误分类?
例如,修改后的基尼指数为:
因此我想知道是否有任何方法可以在 Scikit-learn 中实现它?
编辑
玩弄class_weight
产生了以下结果:
绘制决策边界和树蓝色为正(1):
在超过少数阶级(或更珍贵)的同时:
dt_100 = tree.DecisionTreeClassifier(max_depth=2, class_weight={1:100})
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
, 三个子组的实际基尼系数