主要内容

bindata

被预测变量

描述

例子

bdata= bindata (sc)被预测变量作为一个表返回。这是一个相同大小的表作为数据输入,但只有在指定的预测因子creditscorecard对象的PredictorVars财产封存,其余的不变。

例子

bdata= bindata (sc,数据)返回一个表被预测变量。bindata返回一个表相同的大小creditscorecard数据,但只有中指定的预测creditscorecard对象的PredictorVars财产封存,其余的不变。

例子

bdata= bindata (sc,名称,值)被预测变量作为一个表返回使用可选参数名称-值对。这是一个相同大小的表作为数据输入,但只有在指定的预测因子creditscorecard对象的PredictorVars财产封存,其余的不变。

例子

全部折叠

这个例子展示了如何使用bindata功能简单的本或离散化数据。

假设本范围的

  • 0到30的

  • 31到50的

  • “51,”

确定年龄变量(通过手动或自动装箱)。如果一个数据点随着年龄41岁,装箱这数据点意味着把它放在垃圾桶41岁,第二本,或者是31到50本。装箱从原始数据,然后映射到离散的组或垃圾箱。在本例中,您可以说,映射到本2号41岁,或者它封存到31到50的类别。如果你知道重量的证据(悲哀)值的三个箱子,你也可以将数据点41替换为悲哀的值对应的第二本。bindata金宝app支持三个面元格式刚才提到:

  • 本(数量“OutputType”名称-值对参数设置为“BinNumber”);这是默认选项,在这种情况下,41名映射到本2。

  • 分类(“OutputType”名称-值对参数设置为“分类”);在这种情况下,41映射到31到50本。

  • (有祸了价值“OutputType”名称-值对参数设置为“悲哀”);在这种情况下,41岁的悲哀值映射到本2号。

创建一个creditscorecard对象使用CreditCardData.mat文件加载数据(使用一个数据集从Refaat 2011)。使用“IDVar”参数表明“CustID”包含ID信息,不应作为一个预测变量。

负载CreditCardDatasc = creditscorecard(数据,“IDVar”,“CustID”)
sc = creditscorecard属性:GoodLabel: 0 ResponseVar:“地位”WeightsVar:“VarNames: {CustID的‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance UtilRate的“地位”}NumericPredictors: {‘CustAge’‘TmAtAddress’‘CustIncome’‘TmWBank’‘AMBalance’‘UtilRate} CategoricalPredictors: {“ResStatus”“EmpStatus”“OtherCC”} BinMissingData: 0 IDVar:“CustID”PredictorVars: {‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance’‘UtilRate}数据:[1200 x11表)

执行自动装箱。

sc = autobinning (sc);

显示本信息“CustAge”

bininfo (sc,“CustAge”)
ans =8×6表本好与坏的几率,悲哀InfoValue _________________出生______替{[无穷,33)}70年53 1.3208 -0.42622 0.019746{[33岁,37)}64年47 1.3617 -0.39568 0.015308{[37、40)}73年47 1.5532 -0.26411 0.0072573{'[40岁,46)}174 94 1.8511 -0.088658 0.001781{[46岁,48)}61年25 2.44 0.18758 0.0024372{[48,58)的}263 105 2.5048 0.21378 0.013476{的[58岁的Inf]} 98年26 3.7692 0.62245 0.0352{“总数”}803 397 0.095205 2.0227南

这些都是前十的年龄值原始数据,用于创建creditscorecard对象。

数据(1:10,“CustAge”)
ans =10×1表CustAge _________ 53 61 47 50 68 65 34 50 50 49

本计分卡数据到本数字(默认行为)。

bdata = bindata (sc);

根据本信息,第一个年龄应该映射到第四本,第二到第五本时代,等等。这些都是前10箱,在容器编号格式。

bdata (1:10“CustAge”)
ans =10×1表CustAge _________ 6 7 5 6 7 7 2 6 6 6

本计分卡数据和显示他们本标签。为此,设置bindata名称-值对的理由“OutputType”“分类”

bdata = bindata (sc,“OutputType”,“分类”);

这些是前10扔进垃圾箱,直言格式。

bdata (1:10“CustAge”)
ans =10×1表58 CustAge ________(48)[58岁的Inf][46岁,48)[48,58)[58岁的Inf][58岁的Inf][33岁,37)[48,58)[48,58)[48,58)

记分卡数据转换为悲哀的价值观。为此,设置bindata名称-值对的理由“OutputType”“悲哀”

bdata = bindata (sc,“OutputType”,“悲哀”);

这些是前10扔进垃圾箱,悲哀格式。年龄被映射到内部的悲哀值显示使用bininfo函数。

bdata (1:10“CustAge”)
ans =10×1表CustAge ________ 0.21378 0.62245 0.18758 0.21378 0.62245 0.62245 -0.39568 0.21378 0.21378 0.21378

这个例子展示了如何使用bindata本函数的可选的输入数据。如果没有提供,bindata箱子的creditscorecard训练数据。然而,如果一个不同的数据集需要被扔进垃圾箱,例如,一些“测试”数据,这可以通过bindata作为一个可选的输入。

创建一个creditscorecard对象使用CreditCardData.mat文件加载数据(使用一个数据集从Refaat 2011)。使用“IDVar”参数表明“CustID”包含ID信息,不应作为一个预测变量。

负载CreditCardDatasc = creditscorecard(数据,“IDVar”,“CustID”)
sc = creditscorecard属性:GoodLabel: 0 ResponseVar:“地位”WeightsVar:“VarNames: {CustID的‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance UtilRate的“地位”}NumericPredictors: {‘CustAge’‘TmAtAddress’‘CustIncome’‘TmWBank’‘AMBalance’‘UtilRate} CategoricalPredictors: {“ResStatus”“EmpStatus”“OtherCC”} BinMissingData: 0 IDVar:“CustID”PredictorVars: {‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance’‘UtilRate}数据:[1200 x11表)

执行自动装箱。

sc = autobinning (sc);

显示本信息“CustAge”

bininfo (sc,“CustAge”)
ans =8×6表本好与坏的几率,悲哀InfoValue _________________出生______替{[无穷,33)}70年53 1.3208 -0.42622 0.019746{[33岁,37)}64年47 1.3617 -0.39568 0.015308{[37、40)}73年47 1.5532 -0.26411 0.0072573{'[40岁,46)}174 94 1.8511 -0.088658 0.001781{[46岁,48)}61年25 2.44 0.18758 0.0024372{[48,58)的}263 105 2.5048 0.21378 0.013476{的[58岁的Inf]} 98年26 3.7692 0.62245 0.0352{“总数”}803 397 0.095205 2.0227南

出于演示的目的,用几行从原始数据作为“测试”数据和显示前10的年龄值的测试数据。

tdata =数据(101:110:);tdata (1:10“CustAge”)
ans =10×1表CustAge _________ 34 59 28 64 61 65 55 37 49 51

将测试数据转换为悲哀的价值观。为此,设置bindata名称-值对的理由“OutputType”“悲哀”通过测试数据(tdata)作为一个可选的输入。

tdata bdata = bindata (sc,“OutputType”,“悲哀”)
bdata =10×11表CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate地位______月______⒈替__________说_____ ________ ________ 101 -0.39568 -0.087767 -0.095564 0.2418 -0.011271 0.76889 0.053364 -0.11274 0.048576 102 0 0.62245 0.14288 0.019329 -0.19947 0.20579 -0.13107 -0.26832 -0.11274 0.048576 103 0.62245 0.02263 0.019329 0.2418 0.47972 -0.12109 0.053364 0.24418 0.092164 104 0 0.62245 0.02263 -0.095564 0.2418 0.47972 -0.12109 0.053364 0.24418 0.048576 105 0 0 -0.42622 0.02263 0.019329 0.2418 -0.06843 0.76889 0.053364 -0.11274 0.092164 106 0.62245 0.02263 0.019329 -0.19947 0.20579 -0.13107 0.053364 -0.11274 -0.22899 107 0 0 0.21378 -0.087767 -0.095564 0.2418 0.47972 0.26704 0.053364 -0.11274 0.048576 108 -0.26411 -0.087767 0.019329 -0.19947 -0.29217 -0.13107 0.053364 -0.11274 0.048576 109 0 0 0.21378 -0.087767 -0.095564 0.2418 -0.026696 -0.13107 0.053364 0.24418 0.048576 110 0.21378 -0.087767 0.019329 0.2418 0.20579 -0.13107 0.053364 -0.29895 -0.22899 0

这些是前10扔进垃圾箱,悲哀格式。年龄被映射到悲哀的值显示在内部bininfo

bdata (1:10“CustAge”)
ans =10×1表CustAge ________ -0.39568 0.62245 0.62245 0.62245 -0.42622 0.62245 0.21378 -0.26411 0.21378 0.21378

创建一个creditscorecard对象使用CreditCardData.mat文件加载数据用缺失值。的变量CustAgeResStatus有缺失值。

负载CreditCardData.mat头(dataMissing, 5)
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 61没有877.23 - 0.29 0 4南75业主雇佣了53000 20是的157.37 - 0.08 0 5 68 56家老板雇用了53000名14是的561.84 - 0.11 0

使用creditscorecard名称-值的参数“BinMissingData”设置为真正的本失踪的数字或分类数据在一个单独的垃圾箱。应用自动装箱。

sc = creditscorecard (dataMissing,“IDVar”,“CustID”,“BinMissingData”,真正的);sc = autobinning (sc);disp (sc)
creditscorecard属性:GoodLabel: 0 ResponseVar:“地位”WeightsVar:“VarNames: {CustID的‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance UtilRate的“地位”}NumericPredictors: {‘CustAge’‘TmAtAddress’‘CustIncome’‘TmWBank’‘AMBalance’‘UtilRate} CategoricalPredictors: {“ResStatus”“EmpStatus”“OtherCC”} BinMissingData: 1 IDVar:“CustID”PredictorVars: {‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance’‘UtilRate}数据:[1200 x11表)

数字数据的显示和绘制本信息“CustAge”包括缺失的数据在一个单独的本标签<失踪>

(bi, cp) = bininfo (sc,“CustAge”);disp (bi)
本好与坏的几率,悲哀InfoValue _________________出生______月______ __________{[无穷,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.17713 0.0035449{'[51岁,58)}157 62 2.5323 0.22469 0.0088407{的[58岁的Inf]} 93年25 3.72 0.60931 0.032198{' <失踪>}19 11 1.7273 -0.15787 0.00063885{“总数”}803 397 0.087112 2.0227南
plotbins (sc,“CustAge”)

图包含一个坐标轴对象。坐标轴对象标题CustAge ylabel悲哀包含3对象类型的酒吧,线。这些对象是好的,坏的。

本信息为分类数据显示和阴谋“ResStatus”包括缺失的数据在一个单独的本标签<失踪>

(bi, cg) = bininfo (sc,“ResStatus”);disp (bi)
本好与坏的几率,悲哀出生______ _____ __________ InfoValue * * *{“租户”}296 161 1.8385 -0.095463 0.0035249{‘业主’}352 171 2.0585 0.017549 0.00013382{‘其他’}128年52 2.4615 0.19637 0.0055808{' <失踪>}27 13 2.0769 0.026469 2.3248 e-05{“总数”}803 397 0.0092627 2.0227南
plotbins (sc,“ResStatus”)

图包含一个坐标轴对象。坐标轴对象标题ResStatus ylabel悲哀包含3对象类型的酒吧,线。这些对象是好的,坏的。

“CustAge”“ResStatus”预测,有缺失的数据(年代和<定义>)在训练数据和装箱过程估计一个悲哀的价值-0.157870.026469分别对缺失的数据在这些预测,如上所示。

出于演示的目的,用几行从原始数据作为测试数据,并介绍一些缺失的数据。

tdata = dataMissing(十一14:);tdata.CustAge(1) =南;tdata.TmAtAddress(2) =南;tdata.ResStatus (3) =“<定义>”;tdata.EmpStatus (4) =“<定义>”;disp (tdata)
CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate ____ ____地位……………………_____ _____ ________ ________ 11南24租户未知34000 44是的119.8 0.07 1 12 48南其他未知44000 14是的403.62 - 0.03 0 13 65 63 <定义>未知48000 6没有111.88 - 0.02 0 14 44 75其他<定义> 41000 35没有436.41 - 0.18 0

将测试数据转换为悲哀的价值观。为此,设置bindata名称-值对的理由“OutputType”“悲哀”,传递测试数据tdata作为一个可选的输入。

tdata bdata = bindata (sc,“OutputType”,“悲哀”);disp (bdata)
CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate地位______月______⒈替__________说_____ ________ ________ 11 -0.15787 0.02263 -0.095463 -0.19947 0.17713 -0.06843 -0.12109 0.053364 0.24418 0.048576 1 12南0.19637 -0.19947 0.20579 -0.13107 0.053364 0.24418 0.092164 0 13 0 0.60931 0.02263 0.026469 -0.19947 0.47972 -0.25547 - -0.26832 0.24418 - 0.092164 -0.011271 -0.12109 -0.26832 0.24418 0.048576 -0.04556 0.02263 0.19637南14 0

“CustAge”“ResStatus”预测,因为在训练数据缺失的数据,测试数据中的缺失值映射到的价值估计有祸了<失踪>垃圾箱。因此,一个缺失值“CustAge”被替换为-0.15787和一个缺失值“ResStatus”被替换为0.026469

“TmAtAddress”“EmpStatus”,训练数据没有缺失值,因此没有本缺失的数据,没有办法估计的悲哀值缺失的数据。因此,对于这些预测,悲哀转换叶子缺失值失踪(设置一个悲哀的价值)。

这些规则适用于当“OutputType”被设置为“悲哀”“WOEModelInput”。基本原理是,如果缺失数据的基于数据的悲哀的价值存在,它应该用于转换和后续步骤(例如,配件物流模型或得分)。

另一方面,当“OutputType”被设置为“BinNumber”“分类”,bindata叶子缺失值失踪,因为这允许您随后把缺失的数据在你认为合适的地方。

例如,当“OutputType”被设置为“BinNumber”,将缺失值:

tdata bdata = bindata (sc,“OutputType”,“BinNumber”);disp (bdata)
CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate ____ ____地位…………替_____ _____ ________ ________ 11南2 1 1 2 3 3 1 2 1 12 6南3 1 6 2 2 1 1 0 13 8 2南1 7 1 1 1 1 0 14 4 2 3南5 3 1 1 2 0

“OutputType”被设置为“分类”,将缺失值“<定义>”:

tdata bdata = bindata (sc,“OutputType”,“分类”);disp (bdata)
CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate地位_________ _________________………………………………_________________ ____ ______ 11 <定义>(83)租户未知45(33000,35000)(23日)是的[无穷,558.88)[0.04,0.36)1 12[48,51)<定义>其他未知(42000、47000)[12、23)是的[无穷,558.88)[无穷,0.04)0 13[58岁的Inf][23, 83) <定义>未知[47000年,正][无穷,12)没有[无穷,558.88)[14负无穷,0.04)0(40、46)(83)其他<定义> 45(40000,42000)(23日)没有(负无穷,558.88)(0.04,0.36)0

bindata金宝app支持以下类型的悲哀转换:

  • “OutputType”名称-值参数设置为“悲哀”,bindata简单地悲哀转换适用于所有预测并保持其他变量的原始数据不变。

  • “OutputType”名称-值对参数设置为“WOEModelInput”,bindata返回一个表,可以直接作为输入用于拟合的逻辑回归模型的记分卡。在这种情况下,bindata:

  • 有祸了转换适用于所有的预测因子。

  • 回报预测变量,但没有IDVar或未使用的变量是包含在输出中。

  • 包括映射的响应变量,最后一列。

  • fitmodel函数调用bindata在内部使用“WOEModelInput”选择适合的逻辑回归模型creditscorecard模型。

创建一个creditscorecard对象使用CreditCardData.mat文件加载数据(使用一个数据集从Refaat 2011)。使用“IDVar”参数表明“CustID”包含ID信息,不应作为一个预测变量。

负载CreditCardDatasc = creditscorecard(数据,“IDVar”,“CustID”)
sc = creditscorecard属性:GoodLabel: 0 ResponseVar:“地位”WeightsVar:“VarNames: {CustID的‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance UtilRate的“地位”}NumericPredictors: {‘CustAge’‘TmAtAddress’‘CustIncome’‘TmWBank’‘AMBalance’‘UtilRate} CategoricalPredictors: {“ResStatus”“EmpStatus”“OtherCC”} BinMissingData: 0 IDVar:“CustID”PredictorVars: {‘CustAge’‘TmAtAddress’‘ResStatus’‘EmpStatus’‘CustIncome’‘TmWBank’‘OtherCC’‘AMBalance’‘UtilRate}数据:[1200 x11表)

执行自动装箱。

sc = autobinning (sc);

显示本信息“CustAge”

bininfo (sc,“CustAge”)
ans =8×6表本好与坏的几率,悲哀InfoValue _________________出生______替{[无穷,33)}70年53 1.3208 -0.42622 0.019746{[33岁,37)}64年47 1.3617 -0.39568 0.015308{[37、40)}73年47 1.5532 -0.26411 0.0072573{'[40岁,46)}174 94 1.8511 -0.088658 0.001781{[46岁,48)}61年25 2.44 0.18758 0.0024372{[48,58)的}263 105 2.5048 0.21378 0.013476{的[58岁的Inf]} 98年26 3.7692 0.62245 0.0352{“总数”}803 397 0.095205 2.0227南

这些都是前十的年龄值原始数据,用于创建creditscorecard对象。

数据(1:10,“CustAge”)
ans =10×1表CustAge _________ 53 61 47 50 68 65 34 50 50 49

将测试数据转换为悲哀的价值观。为此,设置bindata名称-值对的理由“OutputType”“悲哀”

bdata = bindata (sc,“OutputType”,“悲哀”);

这些是前10扔进垃圾箱,悲哀格式。年龄被映射到悲哀的值显示在内部bininfo

bdata (1:10“CustAge”)
ans =10×1表CustAge ________ 0.21378 0.62245 0.18758 0.21378 0.62245 0.62245 -0.39568 0.21378 0.21378 0.21378

这些是前10扔进垃圾箱,悲哀格式。年龄被映射到悲哀的值显示在内部bininfo

bdata (1:10“CustAge”)
ans =10×1表CustAge ________ 0.21378 0.62245 0.18758 0.21378 0.62245 0.62245 -0.39568 0.21378 0.21378 0.21378

原始数据的大小和规模bdata输出是相同的,因为bindata叶子(如未使用的变量“IDVar”)不变。

数据bdata
类属性名称大小字节bdata 1200 x11 108987表数据1200 x11 84603表

响应值是相同的原始数据和分箱数据,因为在默认情况下,bindata不修改响应值。

disp ([data.status (1:10) bdata.status (1:10)))
0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1

当拟合数据逻辑回归模型与悲哀,设置“OutputType”名称-值对参数“WOEModelInput”

bdata = bindata (sc,“OutputType”,“WOEModelInput”);

被预测数据时是一样的“OutputType”名称-值对参数设置为“悲哀”

bdata (1:10“CustAge”)
ans =10×1表CustAge ________ 0.21378 0.62245 0.18758 0.21378 0.62245 0.62245 -0.39568 0.21378 0.21378 0.21378

然而,原始数据的大小和规模bdata输出是不同的。这是因为bindata删除未使用的变量(如“IDVar”)。

数据bdata
类属性名称大小字节bdata 1200 x10 99167表数据1200 x11 84603表

响应值也修改在这种情况下,映射,这样“好”1和“坏”0

disp ([data.status (1:10) bdata.status (1:10)))
0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 1 0

输入参数

全部折叠

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

本考虑到规则中设置的数据creditscorecard对象,使用一个表指定。默认情况下,数据设置为creditscorecard对象的原始数据。

在创建一个creditscorecard对象,执行数据准备的任务有一个适当的结构数据作为输入,creditscorecard对象。

数据类型:

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:bdata = bindata (sc,‘OutputType’,‘祸’,‘ResponseFormat’,“映射”)

输出格式、指定为逗号分隔组成的“OutputType”特征向量与下列值:

  • BinNumber——返回本数字对应于每一个观察。

  • 分类——返回本标签对应每一个观察。

  • 有祸了——返回的重量(悲哀)对应于每个观测证据。

  • WOEModelInput当拟合模型,使用这个选项。这个选项:

    • 返回的重量(悲哀)对应于每个观测证据。

    • 回报预测变量,但没有IDVar或未使用的变量是包含在输出中。

    • 丢弃任何预测的垃圾箱悲哀的价值观。

    • 包括映射的响应变量,最后一列。

    请注意

    bindata名称-值对的观点“OutputType”被设置为“WOEModelInput”,bdata输出只包含的列对应于垃圾箱没有的预测因子重量的证据(悲哀)值,bdata包括最后一列映射的响应。

    缺失的数据(如果有的话)中bdata输出为缺失的数据,不影响时丢弃预测规则“OutputType”被设置为“WOEModelInput”

数据类型:字符

响应值的格式,指定为逗号分隔组成的“ResponseFormat”特征向量与下列值:

  • RawData——响应变量复制到不变bdata输出。

  • 映射——响应值被修改(如果必要的话),这样“好”映射到1,“坏”映射到0

数据类型:字符

输出参数

全部折叠

被预测变量,作为一个表返回。这是一个相同大小的表(见异常在以下报告)作为数据输入,但只有中指定的预测因子creditscorecard对象的PredictorVars财产封存,其余的不变。

请注意

bindata名称-值对的观点“OutputType”被设置为“WOEModelInput”,bdata输出只包含的列对应于垃圾箱没有的预测因子重量的证据(悲哀)值,bdata包括最后一列映射的响应。

缺失的数据(如果有的话)中bdata输出为缺失的数据,不影响时丢弃预测规则“OutputType”被设置为“WOEModelInput”

引用

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

[2]Refaat, M。信用风险记分卡:使用情景应用程序开发和实现。lulu.com, 2011。

版本历史

介绍了R2014b