bininfo

返回预测器的bin信息

描述

例子

bi= bininfo (SC.PredictorName位于区间水平恢复的信息,如频率“好”,“坏”和斌的统计数据中指定的预测PredictorName

例子

bi= bininfo (___名称,值加入了可选的名称值参数。

例子

bibm] = bininfo(SC.PredictorName名称,值加入了可选的名称值参数。bininfo还任选地返回合并图(bm)或者在用于数字预测的切割点的矢量,或类别分组为分类预测的表的形式仓规则。

例子

bibmm] = bininfo(SC.PredictorName名称,值返回bin级别的信息,例如“Good”、“Bad”的频率和在PredictorName使用可选的名称-值对参数。bininfo任选地返回给数字预测的切割点的矢量,或类别分组为分类预测的表的形式的像素合并地图或箱柜规则。此外,可选的名字 - 值对参数m返回包含最小值和最大值的数值数组,集合(或所定义的)由用户。这m将输出参数设置为用于分类预测器的空数组。

例子

全部收缩

创建一个creditscorecard对象使用CreditCardData.mat文件来加载数据(使用从2011年Refaat数据集)。

负载CreditCardDataSC = creditscorecard(数据);

显示了分类预测仓信息ResStatus

bi = bininfo (sc,“ResStatus”
bi =4×6表滨好差赔率WOE INFOVALUE ______________ ____ ____ ______ _________ _________ { '房主'} 365 177 2.0621 0.019329 0.0001682 { '租客'} 307 167 1.8383 -0.095564 0.0036638 { '其他'} 131 53 2.4717 0.20049 0.0059418 { '彩民'} 803397 2.0227 NaN的0.0097738

使用CreditCardData.mat文件来加载数据(dataWeights),其中包含一个柱(RowWeights)的权重(使用来自Refaat 2011的数据集)。

负载CreditCardData

创建一个creditscorecard对象使用用于可选的名称 - 值对参数'WeightsVar'

SC = creditscorecard(dataWeights,'WeightsVar''RowWeights'
sc = creditscorecard with properties: GoodLabel: 0 ResponseVar: 'status' WeightsVar: 'RowWeights' VarNames: {1x12 cell} NumericPredictors: {1x7 cell} CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'} BinMissingData: 0 IDVar: " PredictorVars: {1x10 cell} Data: [1200x12 table]

显示数值预测器的bin信息'CustIncome'.当可选的名称-值对参数'WeightsVar'用于指定的观察(样品)的权重,所述bi表格包含加权计数。

bi = bininfo (sc,'CustIncome');bi (1:10,:)
ans =10×6表Bin Good Bad Odds WOE InfoValue _________ _______ _______ _______ ________ __________ {'18000'} 0.94515 1.496 0.63179 -1.1667 0.0059198 {'19000'} 0.47588 0.80569 0.9065 -1.2341 0.0013716 {'21000'} 2.1671 1.4636 1.4806 0.31509 0.00061392 {'21000'} 3.2522 0.88064 3.693 0.59889 0.0021303 {'22000'} 1.5438 1.2714 1.2142 -0.51346 0.0012913 {'23000'}1.1383 0.36383 -1.7186 0.042642 {'26000'} 3.1058 3.528 0.88032 -0.83501 0.0082144 . 1.1383 0.36383 -1.7186 0.042642 {'26000'} 3.1058 3.528 0.88032 -0.83501 0.0082144

创建一个creditscorecard对象使用CreditCardData.mat文件来加载数据(使用从2011年Refaat数据集)。

负载CreditCardDataSC = creditscorecard(数据);

显示了分类预测定制仓信息ResStatus,只保留有祸了列。证据权重(Weight-of-Evidence, WOE)是一个接一个地定义的,但并没有“完全的悲哀”的概念,因此,最后一个元素“总数”行设置为

bi = bininfo (sc,“ResStatus”“统计数据”“悲哀”);DISP(BI)
滨好差WOE ______________ ____ ___ _________ { '房主'} 365 177 0.019329 { '租客'} 307 167 -0.095564 { '其他'} 131 53 0.20049 { '彩民'} 803 397的NaN

显示了分类预测定制仓信息ResStatus,只保留赔率有祸了列,而不总数排。

bi = bininfo (sc,“ResStatus”“统计数据”{“几率”“悲哀”},“总数”“关闭”);DISP(BI)
滨好差赔率WOE ______________ ____ ____ ______ _________ { '房主'} 365 177 2.0621 0.019329 { '租客'} 307 167 1.8383 -0.095564 { '其他'} 131 53 2.4717 0.20049

显示信息值,熵,基尼系数和卡方统计。有关这些统计信息的更多信息,请参见对于信用记分卡统计

有关信息值,熵和基尼,在料位报告的值是频的总价值的贡献。总信息值,熵和基尼措施是在“总数”排。

卡方,如果有N箱,第一N-1中的值“Chi2”列报告连续容器的两两卡方统计信息。例如,这种成对度量也被'合并'算法在autobinning确定两个连续的垃圾箱应该合并。在这个例子中,在第一值“Chi2”列(1.0331)为箱1和箱2的卡方统计量(“业主”“租户”),以及列中的第二个值(2.5103)为箱2和箱3的卡方统计量(“租户”'其他').在本例中没有更多的两两卡方值需要计算,因此“Chi2”列设置为.中的卡方值“总数”行是所有箱子上计算的卡方统计量。

bi = bininfo (sc,“ResStatus”“统计数据”{“InfoValue”'熵'“基尼”“Chi2”});DISP(BI)
滨好差INFOVALUE熵基尼χ2 ______________ ____ ___ _________ _______ ______ { '房主'} 365 177 0.0001682 0.91138 0.43984 1.0331 { '租客'} 307 167 0.0036638 0.93612 0.45638 2.5103 { '其他'} 131 53 0.0059418 0.86618 0.41015 NaN的{”彩民} 803 397 0.0097738 0.91422 0.44182 2.5549

创建一个creditscorecard对象使用CreditCardData.mat文件来加载数据(使用从2011年Refaat数据集)。

负载CreditCardDataSC = creditscorecard(数据);

该分级地图或分类数据的规则归纳在“类别分组”表,返回一个可选的输出。默认情况下,每个类别被放置在一个单独的垃圾桶。下面是预测信息ResStatus

[双CG] = bininfo(SC,“ResStatus”
bi =4×6表滨好差赔率WOE INFOVALUE ______________ ____ ____ ______ _________ _________ { '房主'} 365 177 2.0621 0.019329 0.0001682 { '租客'} 307 167 1.8383 -0.095564 0.0036638 { '其他'} 131 53 2.4717 0.20049 0.0059418 { '彩民'} 803397 2.0227 NaN的0.0097738
cg =3×2表类别BinNumber  ______________ _________ {' 房主'}1{“租户”}2{‘其他’}3

组类别租户其他,修改类别分组表cg这样,箱号为其他是一样的仓室号租户.然后使用modifybins功能,更新记分卡。

cg.BinNumber (3) = 2;SC = modifybins(SC,“ResStatus”'CatGrouping'、cg);

显示更新后的bin信息。该箱标签已更新和垃圾桶成员信息都包含在该类别分组cg

[双CG] = bininfo(SC,“ResStatus”
bi =3×6表Bin Good Bad Odds WOE InfoValue __________ _______ ______ _________ __________ {'Group1'} 365 177 2.0621 0.019329 0.0001682 {'Group2'} 438 220 1.9909 -0.015827 0.00013772 {' total '} 803 397 2.0227 NaN 0.00030592
cg =3×2表类别BinNumber  ______________ _________ {' 房主'}1{“租户”}2{‘其他’}2

创建一个creditscorecard对象使用CreditCardData.mat文件来加载数据(使用从2011年Refaat数据集)。

负载CreditCardDataSC = creditscorecard(数据);

预测指标CustIncome是数字。默认情况下,预测器的每个值都放在一个单独的容器中。

bi = bininfo (sc,'CustIncome'
bi =46×6表本好不好悲哀InfoValue几率  _________ ____ ___ _______ _________ __________ {' 18000年}2 3 0.66667 -1.1099 0.0056227{19000”}1 2 0.5 -1.3976 0.0053002{20000”}4 2 2 -0.011271 - 6.3641 e-07{21000”}6 3 2 -0.011271 - 9.5462 e-07{22000”}4 2 2 -0.011271 - 6.3641 e-07{23000”}4 4 1 -0.70442 0.0035885{24000”}5 5 1 -0.70442 0.0044856{25000”}4 90.44444 -1.5153 0.026805 {'26000'} 4 11 0.36364 -1.716 0.038999 {'27000'} 6 6 1 -0.70442 0.0053827 {'28000'} 13 11 1.1818 -0.53736 0.0061896 {'29000'} 11 10 1.1 -0.60911 0.0069988 {'30000'} 18 16 1.125 -0.58664 0.010493 {'31000'} 24 8 3 0.39419 0.0038382 {'32000'} 21 15 1.4 -0.36795 0.0042797 {'33000'} 35 19 1.8421 -0.093509 0.00039951 ⋮

减少使用区间的数目autobinning函数(modifybins函数也可以使用)。

sc = autobinning (sc,'CustIncome');

显示更新后的bin信息。数值数据的分类映射或规则总结为“切点”,作为可选输出返回(cp).

[双CP] = bininfo(SC,'CustIncome'
bi =8×6表宾好差赔率WOE INFOVALUE _________________ ____ ___ _______ _________ __________ { '[-Inf,29000)'} 53 58 0.91379 -0.79457 0.06364 { '[29000,33000)'} 74 49 1.5102 -0.29217 0.0091366 {'[33000,35000)'} 68 36 1.8889 -0.06843 0.00041042 {'[35000,40000) '} 193 98 1.9694 -0.026696 0.00017359 {'[40000,42000) '} 68 34 2 -0.011271 1.0819e-05 {'[42000,47000)'}164 66 2.4848 0.20579 0.0078175 { '[47000,天道酬勤]'} 183 56 3.2679 0.47972 0.041657 { '总计'} 803 397 2.0227的NaN 0.12285
CP =6×129000 33000 35000 40000 42000 47000

手动删除第二剪切点的合并仓两个和三个(在第二和第三区之间的边界)。使用modifybins功能,更新记分卡。

CP(2)= [];SC = modifybins(SC,'CustIncome'“割点”,CP,“MinValue”,0);

显示更新后的bin信息。

[双CP,MV] = bininfo(SC,'CustIncome'
bi =7×6表宾好差赔率WOE INFOVALUE _________________ ____ ___ _______ _________ __________ { '[0,29000)'} 53 58 0.91379 -0.79457 0.06364 { '[29000,35000)'} 142 85 1.6706 -0.19124 0.0071274 { '[35000,40000)'} 193 98 1.9694 -0.026696 0.00017359 { '[40000,42000)'} 68 34 2 -0.011271 1.0819e-05 { '[42000,47000)'} 164 66 2.4848 0.20579 0.0078175 { '[47000,天道酬勤]'} 183 563.2679 0.47972 0.041657 { '总计'} 803 397 2.0227的NaN 0.12043
CP =5×129000 35000 40000 42000 47000
mv =1×20天道酬勤

注意,建议避免具有零频率仓,因为它们导致无限或未定义的() 统计数据。使用modifybins或者autobinning函数来修改容器。

创建一个creditscorecard对象使用CreditCardData.mat文件来加载dataMissing用缺失值。

负载CreditCardData.mat头(dataMissing, 5)
ans =5×11表CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate地位  ______ _______ ___________ ___________ _________ __________ _______ _______ _________ ________ ______ 53 62 <定义>未知50000 55是的1055.9 - 0.22 0 2 61 22业主雇佣52000 25是的1161.6 - 0.24 0 3 47 30租户雇佣了37000 61877.23 0.29 0 4 NaN 75自雇业主53000 20是157.37 0.08 0 5 68 56自雇业主53000 14是561.84 0.11 0
流('行数:%d\n'、高度(dataMissing))
行数:1200行
流('缺少的值的数量CustAge: %d\n'总和(ismissing (dataMissing.CustAge)))
CustAge: 30
流(restatus: %d\n,总和(ISMISSING(dataMissing.ResStatus)))
遗漏值的号码ResStatus:40

creditscorecard与名称值参数“BinMissingData”设置为真的以斌在一个单独的箱子丢失的数据。

SC = creditscorecard(dataMissing,“IDVar”“CustID”“BinMissingData”,真正的);sc = autobinning (sc);disp (sc)
creditscorecard with properties: GoodLabel: 0 ResponseVar: 'status' WeightsVar: " VarNames: {1x11 cell} NumericPredictors: {1x6 cell} CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'} BinMissingData: 1 IDVar: 'CustID' PredictorVars: {1x9 cell} Data: [1200x11 table]

显示bin信息的数字数据“CustAge”包括在标记的单独的箱丢失的数据< >失踪

bi = bininfo (sc,“CustAge”);DISP(BI)
宾好差赔率WOE INFOVALUE _____________ ____ ___ ______ ________ __________ { '[-Inf,33)'} 69 52 1.3269 -0.42156 0.018993 { '[33,37)'} 63 45 1.4 -0.36795 0.012839 {'[37,40)'} 72 47 1.5319 -0.2779 0.0079824 {'[40,46)”} 172 89 1.9326 -0.04556 0.0004549 { '[46,48)'} 59 25 2.36 0.15424 0.0016199 { '[48,51)'} 99 41 2.4146 0.177130.0035449 { '[51,58)'} 157 62 2.5323 0.22469 0.0088407 { '[58,天道酬勤]'} 93 25 3.72 0.60931 0.032198 { '<缺失>'} 19 11 1.7273 -0.15787 0.00063885 { '总计'} 803 397 2.0227NaN的0.087112
plotbins(SC,“CustAge”

显示的分类数据的bin信息“ResStatus”包括在标记的单独的箱丢失的数据< >失踪

[双CG] = bininfo(SC,“ResStatus”);DISP(BI)
Bin Good Bad Odds WOE InfoValue ______________ _____________ _________ __________ {'Tenant'} 296 161 1.8385 -0.095463 0.0035249 {'Home Owner'} 352 171 2.0585 0.017549 0.00013382 {'Other'} 128 52 2.4615 0.19637 0.0055808 {''} 27 13 2.0769 0.026469 2.3248e-05 {' total '} 803 397 2.0227 NaN 0.0092627
disp (cg)
类别BinNumber ______________ _________ { '租户'} {1 '家庭所有者'} 2 { '其他'} 3

需要注意的是该类别分组表不包括< >失踪因为这是一个保留bin和用户不能与直接交互< >失踪箱子

plotbins(SC,“ResStatus”

输入参数

全部收缩

信用评分卡模型,指定为creditscorecard对象。用creditscorecard创建一个creditscorecard对象。

预测器名称,使用包含预测器名称的字符向量指定。PredictorName是大小写敏感的。

数据类型:字符

名称 - 值对参数

指定可选的逗号分隔的对名称,值参数。姓名参数名和价值是对应的值。姓名必须出现引号内。您可以按照任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:BI = bininfo(SC,PredictorName, '统计', 'WOE', '总计', '开')

要包含在bin信息中的统计信息列表,指定为逗号分隔对,由“统计数据”以及字符向量或字符向量的单元格数组。有关更多信息,请参阅对于信用记分卡统计.可能的值是:

  • “几率”- 赔率的信息是“货物”的在比“危害”。

  • “悲哀”- 证据的重量。该WOE统计办法“商品”和分布之间的偏差“公害”。

  • “InfoValue”——信息价值。它与祸祸指数密切相关,是一种用于确定拟合模型中预测器的强度的统计数据。它衡量的是“好”和“坏”的分布之间的偏差有多大。然而,只有“好”或只有“坏”观测值的箱子会导致无限的信息值。考虑在这些情况下通过使用modifybins或者autobinning

  • '熵'-熵是容器中包含的不可预测性的度量。箱子中“好”和“坏”的数量差异越大,熵就越低。

  • “基尼”- 数据的样本内的统计分散或不等式的措施。

  • “Chi2”- 群体之间的显着差异性和独立性的措施。

请注意

避免为零频率垃圾箱,因为它们会导致无穷的,不确定的() 统计数据。用modifybins或者autobinning修改箱。

数据类型:字符|细胞

指示符包括在所述信息表的底部的行总计的,指定为逗号分隔的一对组成的“总数”和一个带值的字符向量或者离开

数据类型:字符

输出参数

全部收缩

滨信息,返回一个表。该箱信息表包含每个仓的一列和汇总的一排。列包含斌介绍,“好”与“坏”和斌的统计频率。避免为零频率垃圾箱,因为它们会导致无穷的,不确定的() 统计数据。用modifybins或者autobinning修改箱。

请注意

在创建creditscorecard与对象creditscorecard,如果可选的名称-值对参数WeightsVar用于指定观察(样本)权重,则bi表格包含加权计数。

装仓地图或规则,返回作为用于数字预测的切割点的矢量,或类别分组为分类预测的表。有关更多信息,请参阅modifybins

分箱最小和最大的值(作为设定或由用户定义的),返回为数字阵列。这m将输出参数设置为用于分类预测器的空数组。

更多关于

全部收缩

对于信用记分卡统计

证据(WOE)的权重是“商品”和“危害”的一个箱柜内的分布的差异的量度。

假设预测者的数据可能的值B1,...,B.分箱数据,是一个小数目。响应采用两个值,“Good”和“Bad”。数据的频率表由:

总计
B1: n11 n12 N1.
B2: n21 n22 N2.
b n1 n2 n
总: nGood nBad nTotal

为每个数据值定义了证据权重(WOE)b作为

WOE(ⅰ)=日志((NI1 / nGood)/(NI2 / NBAD))。

如果您定义

pGood(i) = ni1/nGood, pBad(i) = ni2/nBad

然后pGood)是“好”的意见,即采取对价值的比例bi,对于PBAD).换句话说,pGood)提供了良好的意见在分布预测器的观测值,类似的PBAD).有了这个,就有了一个对应的公式

有祸了(我)=日志(pGood(我)/ pBad(我))。
使用相同的频率表,行的概率被定义为
= ni1 / ni2,
样本的概率定义为
OddsTotal = nGood / NBAD。

为每一行,还可以计算其总信息价值,给出贡献

InfoValue(i) = (pGood(i) - pBad(i)) * WOE(i),

总信息价值简直是所有的总和INFOVALUEL()条款。(一种nansum返回以丢弃根本没有观察的行的贡献。)

同样地,对于每一行,我们可以计算它对总熵的贡献,由

熵(i) = 1 /日志(2)* (ni1 / ni *日志(ni1 / ni) ni2 + / ni *日志(ni2 / ni),
总熵是简单地行熵的加权和,
sum(ni/nTotal * Entropy(i)), i = 1,…

对每一对bin进行两两计算,并测量在拆分或合并bin时两组之间的统计差异,定义为:

Chi2 =总和(和((Aij - Eij) ^ 2 / Eij, j k = 1 . .), i = m m + 1)。
有关拆分和合并容器的更多信息,请参见分裂合并

Gini比率是父节点的度量,即在拆分或合并之前给定的bins/categories的度量。基尼系数定义为:

GR = 1-G_hat / GP
G_hat为当前分拆或合并的加权基尼系数:
G_hat = SUM((新泽西州/ N)* GJ,J = 1..M)。
有关拆分和合并容器的更多信息,请参见分裂合并

使用bininfo与重量

当观察权重使用可选的定义WeightsVar创建时的说法creditscorecard的对象,而不是计数是好还是坏在每个箱行时,bininfo函数累积每个容器中好的或坏的行的权重。

在“频率”的报道不再是行的基础“计数”,但是是好是坏,并​​落在一个特定格行的“累计重量”。一旦这些“加权后的频率”是已知的,所有其他相关的统计(赔率有祸了, 和INFOVALUE)是用通常的公式计算的。有关更多信息,请参阅利用观测权建立信用记分卡模型

参考文献

[1]安德森,R.信用评分工具包。牛津大学出版社,2007年。

[2] Refaat,M.信用风险记分卡:使用SAS开发和实施。lulu.com,2011。

介绍了在R2014b