bindata

Сгруппированные переменные предикторы

Описание

пример

bdata = bindata(sc) сгруппированные переменные предикторы, возвращенные как таблица. Это - таблица одного размера с вводом данных, но только предикторы, заданные в creditscorecard PredictorVars объекта свойство сгруппировано, и остающиеся единицы неизменны.

пример

bdata = bindata(sc,data) возвращает таблицу сгруппированных переменных предикторов. bindata возвращает таблицу одного размера с creditscorecard данные, но только предикторы заданы в creditscorecard PredictorVars объекта свойство сгруппировано, и остающиеся единицы неизменны.

пример

bdata = bindata(sc,Name,Value) сгруппированные переменные предикторы, возвращенные как таблица с помощью дополнительных аргументов пары "имя-значение". Это - таблица одного размера с вводом данных, но только предикторы, заданные в creditscorecard PredictorVars объекта свойство сгруппировано, и остающиеся единицы неизменны.

Примеры

свернуть все

В этом примере показано, как использовать bindata функционируйте только к интервалу или дискретизируйте данные.

Предположим области значений интервала

  • 'от 0 до 30'

  • '31 - 50'

  • '51 и'

определяются для переменной возраста (через ручное или автоматическое раскладывание). Если точка данных с возрастом 41 дана, раскладывание это, точка данных означает помещать его в интервал для 41 года, который является вторым интервалом, или '31 - 50' интервал. Раскладывание является затем отображением из исходных данных в дискретные группы или интервалы. В этом примере можно сказать, что 41-летний сопоставлен в интервал номер 2, или что это сгруппировано в '31 - 50' категория. Если вы знаете значение Веса доказательства (WOE) для каждого из этих трех интервалов, вы могли бы также заменить точку данных 41 на значение WOE, соответствующее второму интервалу. bindata поддерживает три формата раскладывания, только упомянутые:

  • Номер интервала (где 'OutputType' аргумент пары "имя-значение" установлен в 'BinNumber'); это - опция по умолчанию, и в этом случае, 41 сопоставлен с интервалом 2.

  • Категориальный (где 'OutputType' аргумент пары "имя-значение" установлен в 'Categorical'); в этом случае, 41 сопоставлен с '31 - 50' интервал.

  • Значение WOE (где 'OutputType' аргумент пары "имя-значение" установлен в 'WOE'); в этом случае, 41 сопоставлен со значением WOE интервала номер 2.

Создайте creditscorecard объект с помощью CreditCardData.mat файл, чтобы загрузить data (использование набора данных от Refaat 2011). Используйте 'IDVar' аргумент, чтобы указать на тот 'CustID' содержит информацию о ID и не должен быть включен как переменный предиктор.

load CreditCardData 
sc = creditscorecard(data,'IDVar','CustID')
sc = 
  creditscorecard with properties:

                GoodLabel: 0
              ResponseVar: 'status'
               WeightsVar: ''
                 VarNames: {1x11 cell}
        NumericPredictors: {1x6 cell}
    CategoricalPredictors: {'ResStatus'  'EmpStatus'  'OtherCC'}
           BinMissingData: 0
                    IDVar: 'CustID'
            PredictorVars: {1x9 cell}
                     Data: [1200x11 table]

Выполните автоматическое раскладывание.

sc = autobinning(sc);

Покажите информацию об интервале для 'CustAge'.

bininfo(sc,'CustAge')
ans=8×6 table
         Bin         Good    Bad     Odds        WOE       InfoValue
    _____________    ____    ___    ______    _________    _________

    {'[-Inf,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
    {'Totals'   }    803     397    2.0227          NaN     0.095205

Это первые 10 значений возраста в исходных данных, используемых, чтобы создать creditscorecard объект.

data(1:10,'CustAge')
ans=10×1 table
    CustAge
    _______

      53   
      61   
      47   
      50   
      68   
      65   
      34   
      50   
      50   
      49   

Данные о протоколе результатов интервала в числа интервала (поведение по умолчанию).

bdata = bindata(sc);

Согласно информации об интервале, первый возраст должен быть сопоставлен в четвертый интервал, второй возраст в пятый интервал, и т.д. Это первые 10 сгруппированных возрастов в числовом формате интервала.

bdata(1:10,'CustAge')
ans=10×1 table
    CustAge
    _______

       6   
       7   
       5   
       6   
       7   
       7   
       2   
       6   
       6   
       6   

Интервал данные о протоколе результатов и показывает их метки интервала. Для этого установите bindata аргумент пары "имя-значение" для 'OutputType' к 'Categorical'.

bdata = bindata(sc,'OutputType','Categorical');

Это первые 10 сгруппированных возрастов в категориальном формате.

bdata(1:10,'CustAge')
ans=10×1 table
    CustAge 
    ________

    [48,58) 
    [58,Inf]
    [46,48) 
    [48,58) 
    [58,Inf]
    [58,Inf]
    [33,37) 
    [48,58) 
    [48,58) 
    [48,58) 

Преобразуйте данные о протоколе результатов в значения WOE. Для этого установите bindata аргумент пары "имя-значение" для 'OutputType' к 'WOE'.

bdata = bindata(sc,'OutputType','WOE');

Это первые 10 сгруппированных возрастов в формате WOE. Возрасты сопоставлены со значениями WOE, которые внутренне отображены с помощью bininfo функция.

bdata(1:10,'CustAge')
ans=10×1 table
    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 файл, чтобы загрузить data (использование набора данных от Refaat 2011). Используйте 'IDVar' аргумент, чтобы указать на тот 'CustID' содержит информацию о ID и не должен быть включен как переменный предиктор.

load CreditCardData 
sc = creditscorecard(data,'IDVar','CustID')
sc = 
  creditscorecard with properties:

                GoodLabel: 0
              ResponseVar: 'status'
               WeightsVar: ''
                 VarNames: {1x11 cell}
        NumericPredictors: {1x6 cell}
    CategoricalPredictors: {'ResStatus'  'EmpStatus'  'OtherCC'}
           BinMissingData: 0
                    IDVar: 'CustID'
            PredictorVars: {1x9 cell}
                     Data: [1200x11 table]

Выполните автоматическое раскладывание.

sc = autobinning(sc);

Покажите информацию об интервале для 'CustAge'.

bininfo(sc,'CustAge')
ans=8×6 table
         Bin         Good    Bad     Odds        WOE       InfoValue
    _____________    ____    ___    ______    _________    _________

    {'[-Inf,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
    {'Totals'   }    803     397    2.0227          NaN     0.095205

В целях рисунка возьмите несколько строк из исходных данных как "тестовые" данные и отобразите первые 10 значений возраста в тестовых данных.

tdata = data(101:110,:);
tdata(1:10,'CustAge')
ans=10×1 table
    CustAge
    _______

      34   
      59   
      64   
      61   
      28   
      65   
      55   
      37   
      49   
      51   

Преобразуйте тестовые данные в значения WOE. Для этого установите bindata аргумент пары "имя-значение" для 'OutputType' к 'WOE', передача тестовых данных (tdata) как дополнительный вход.

bdata = bindata(sc,tdata,'OutputType','WOE')
bdata=10×11 table
    CustID    CustAge     TmAtAddress    ResStatus    EmpStatus    CustIncome    TmWBank     OtherCC     AMBalance    UtilRate    status
    ______    ________    ___________    _________    _________    __________    ________    ________    _________    ________    ______

     101      -0.39568     -0.087767     -0.095564      0.2418     -0.011271      0.76889    0.053364    -0.11274     0.048576      0   
     102       0.62245       0.14288      0.019329    -0.19947       0.20579     -0.13107    -0.26832    -0.11274     0.048576      1   
     103       0.62245       0.02263      0.019329      0.2418       0.47972     -0.12109    0.053364     0.24418     0.092164      0   
     104       0.62245       0.02263     -0.095564      0.2418       0.47972     -0.12109    0.053364     0.24418     0.048576      0   
     105      -0.42622       0.02263      0.019329      0.2418      -0.06843      0.76889    0.053364    -0.11274     0.092164      0   
     106       0.62245       0.02263      0.019329    -0.19947       0.20579     -0.13107    0.053364    -0.11274     -0.22899      0   
     107       0.21378     -0.087767     -0.095564      0.2418       0.47972      0.26704    0.053364    -0.11274     0.048576      0   
     108      -0.26411     -0.087767      0.019329    -0.19947      -0.29217     -0.13107    0.053364    -0.11274     0.048576      0   
     109       0.21378     -0.087767     -0.095564      0.2418     -0.026696     -0.13107    0.053364     0.24418     0.048576      0   
     110       0.21378     -0.087767      0.019329      0.2418       0.20579     -0.13107    0.053364    -0.29895     -0.22899      0   

Это первые 10 сгруппированных возрастов в формате WOE. Возрасты сопоставлены со значениями WOE, отображенными внутренне bininfo.

bdata(1:10,'CustAge')
ans=10×1 table
    CustAge 
    ________

    -0.39568
     0.62245
     0.62245
     0.62245
    -0.42622
     0.62245
     0.21378
    -0.26411
     0.21378
     0.21378

Создайте creditscorecard объект с помощью CreditCardData.mat файл, чтобы загрузить data с отсутствующими значениями. Переменные CustAge и ResStatus имейте отсутствующие значения.

load CreditCardData.mat 
head(dataMissing,5)
ans=5×11 table
    CustID    CustAge    TmAtAddress     ResStatus     EmpStatus    CustIncome    TmWBank    OtherCC    AMBalance    UtilRate    status
    ______    _______    ___________    ___________    _________    __________    _______    _______    _________    ________    ______

      1          53          62         <undefined>    Unknown        50000         55         Yes       1055.9        0.22        0   
      2          61          22         Home Owner     Employed       52000         25         Yes       1161.6        0.24        0   
      3          47          30         Tenant         Employed       37000         61         No        877.23        0.29        0   
      4         NaN          75         Home Owner     Employed       53000         20         Yes       157.37        0.08        0   
      5          68          56         Home Owner     Employed       53000         14         Yes       561.84        0.11        0   

Используйте creditscorecard с аргументом 'BinMissingData' значения имени установите на true к интервалу недостающие числовые или категориальные данные в отдельном интервале. Примените автоматическое раскладывание.

sc = creditscorecard(dataMissing,'IDVar','CustID','BinMissingData',true);
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]

Отобразите и постройте информацию об интервале для числовых данных для 'CustAge' это включает недостающие данные в отдельный интервал, пометил <missing>.

[bi,cp] = bininfo(sc,'CustAge');
disp(bi)
         Bin         Good    Bad     Odds       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.17713     0.0035449
    {'[51,58)'  }    157      62    2.5323     0.22469     0.0088407
    {'[58,Inf]' }     93      25      3.72     0.60931      0.032198
    {'<missing>'}     19      11    1.7273    -0.15787    0.00063885
    {'Totals'   }    803     397    2.0227         NaN      0.087112
plotbins(sc,'CustAge')

Figure contains an axes object. The axes object with title CustAge contains 3 objects of type bar, line. These objects represent Good, Bad.

Отобразите и постройте информацию об интервале для категориальных данных для 'ResStatus' это включает недостающие данные в отдельный интервал, пометил <missing>.

[bi,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
    {'<missing>' }     27      13    2.0769     0.026469    2.3248e-05
    {'Totals'    }    803     397    2.0227          NaN     0.0092627
plotbins(sc,'ResStatus')

Figure contains an axes object. The axes object with title ResStatus contains 3 objects of type bar, line. These objects represent Good, Bad.

Для 'CustAge' и 'ResStatus' предикторы, там пропускает данные (NaNs и <undefined>) в обучающих данных и процессе раскладывания оценивает значение WOE -0.15787 и 0.026469 соответственно для недостающих данных в этих предикторах, как показано выше.

В целях рисунка возьмите несколько строк из исходных данных как тестовые данные и введите некоторые недостающие данные.

tdata = dataMissing(11:14,:);
tdata.CustAge(1) = NaN;
tdata.TmAtAddress(2) = NaN;
tdata.ResStatus(3) = '<undefined>';
tdata.EmpStatus(4) = '<undefined>';
disp(tdata)
    CustID    CustAge    TmAtAddress     ResStatus      EmpStatus     CustIncome    TmWBank    OtherCC    AMBalance    UtilRate    status
    ______    _______    ___________    ___________    ___________    __________    _______    _______    _________    ________    ______

      11        NaN           24        Tenant         Unknown          34000         44         Yes        119.8        0.07        1   
      12         48          NaN        Other          Unknown          44000         14         Yes       403.62        0.03        0   
      13         65           63        <undefined>    Unknown          48000          6         No        111.88        0.02        0   
      14         44           75        Other          <undefined>      41000         35         No        436.41        0.18        0   

Преобразуйте тестовые данные в значения WOE. Для этого установите bindata аргумент пары "имя-значение" для 'OutputType' к 'WOE', передача тестовых данных tdata как дополнительный вход.

bdata = bindata(sc,tdata,'OutputType','WOE');
disp(bdata)
    CustID    CustAge     TmAtAddress    ResStatus    EmpStatus    CustIncome    TmWBank     OtherCC     AMBalance    UtilRate    status
    ______    ________    ___________    _________    _________    __________    ________    ________    _________    ________    ______

      11      -0.15787      0.02263      -0.095463    -0.19947      -0.06843     -0.12109    0.053364     0.24418     0.048576      1   
      12       0.17713          NaN        0.19637    -0.19947       0.20579     -0.13107    0.053364     0.24418     0.092164      0   
      13       0.60931      0.02263       0.026469    -0.19947       0.47972     -0.25547    -0.26832     0.24418     0.092164      0   
      14      -0.04556      0.02263        0.19637         NaN     -0.011271     -0.12109    -0.26832     0.24418     0.048576      0   

Для 'CustAge' и 'ResStatus' предикторы, потому что там пропускает данные в обучающих данных, отсутствующие значения в тестовых данных, сопоставлены со значением WOE, оцененным для <missing> интервал. Поэтому отсутствующее значение для 'CustAge' заменяется -0.15787, и отсутствующее значение для 'ResStatus' заменяется 0.026469.

Для 'TmAtAddress' и 'EmpStatus', обучающие данные не имеют никаких отсутствующих значений, поэтому нет никакого интервала для недостающих данных, и нет никакого способа оценить значение WOE для недостающих данных. Поэтому для этих предикторов, преобразование WOE оставляет отсутствующие значения как отсутствующий (то есть, устанавливает значение WOE NaN).

Эти правила применяются когда 'OutputType' установлен в 'WOE' или 'WOEModelInput'. Объяснение - то, что, если основанное на данных значение WOE существует для недостающих данных, оно должно использоваться для преобразования WOE и для последующих шагов (например, подбирая логистическую модель или выигрывая).

С другой стороны, когда 'OutputType' установлен в 'BinNumber' или 'Categorical', bindata листовые отсутствующие значения, столь недостающие, поскольку это позволяет вам впоследствии обрабатывать недостающие данные, как вы считаете целесообразным.

Например, когда 'OutputType' установлен в 'BinNumber', отсутствующие значения установлены к NaN:

bdata = bindata(sc,tdata,'OutputType','BinNumber');
disp(bdata)
    CustID    CustAge    TmAtAddress    ResStatus    EmpStatus    CustIncome    TmWBank    OtherCC    AMBalance    UtilRate    status
    ______    _______    ___________    _________    _________    __________    _______    _______    _________    ________    ______

      11        NaN            2             1            1           3            3          2           1           2          1   
      12          6          NaN             3            1           6            2          2           1           1          0   
      13          8            2           NaN            1           7            1          1           1           1          0   
      14          4            2             3          NaN           5            3          1           1           2          0   

И когда 'OutputType' установлен в 'Categorical', отсутствующие значения установлены к '<undefined>':

bdata = bindata(sc,tdata,'OutputType','Categorical');
disp(bdata)
    CustID      CustAge      TmAtAddress     ResStatus      EmpStatus      CustIncome       TmWBank     OtherCC      AMBalance       UtilRate      status
    ______    ___________    ___________    ___________    ___________    _____________    _________    _______    _____________    ___________    ______

      11      <undefined>    [23,83)        Tenant         Unknown        [33000,35000)    [23,45)        Yes      [-Inf,558.88)    [0.04,0.36)      1   
      12      [48,51)        <undefined>    Other          Unknown        [42000,47000)    [12,23)        Yes      [-Inf,558.88)    [-Inf,0.04)      0   
      13      [58,Inf]       [23,83)        <undefined>    Unknown        [47000,Inf]      [-Inf,12)      No       [-Inf,558.88)    [-Inf,0.04)      0   
      14      [40,46)        [23,83)        Other          <undefined>    [40000,42000)    [23,45)        No       [-Inf,558.88)    [0.04,0.36)      0   

bindata поддерживает следующие типы преобразования WOE:

  • Когда 'OutputType' аргумент значения имени установлен в 'WOE', bindata просто применяет преобразование WOE ко всем предикторам и сохраняет остальную часть переменных в исходных данных на месте и неизменный.

  • Когда 'OutputType' аргумент пары "имя-значение" установлен в 'WOEModelInput', bindata возвращает таблицу, которая может использоваться непосредственно в качестве входа для того, чтобы подбирать модель логистической регрессии для протокола результатов. В этом случае, bindata:

  • Применяет преобразование WOE ко всем предикторам.

  • Возвращает переменные предикторы, но никакой IDVar или неиспользуемые переменные включены в выход.

  • Включает сопоставленную переменную отклика как последний столбец.

  • fitmodel вызовы функции bindata внутренне использование 'WOEModelInput' опция, чтобы подбирать модель логистической регрессии для creditscorecard модель.

Создайте creditscorecard объект с помощью CreditCardData.mat файл, чтобы загрузить data (использование набора данных от Refaat 2011). Используйте 'IDVar' аргумент, чтобы указать на тот 'CustID' содержит информацию о ID и не должен быть включен как переменный предиктор.

load CreditCardData 
sc = creditscorecard(data,'IDVar','CustID')
sc = 
  creditscorecard with properties:

                GoodLabel: 0
              ResponseVar: 'status'
               WeightsVar: ''
                 VarNames: {1x11 cell}
        NumericPredictors: {1x6 cell}
    CategoricalPredictors: {'ResStatus'  'EmpStatus'  'OtherCC'}
           BinMissingData: 0
                    IDVar: 'CustID'
            PredictorVars: {1x9 cell}
                     Data: [1200x11 table]

Выполните автоматическое раскладывание.

sc = autobinning(sc);

Покажите информацию об интервале для 'CustAge'.

bininfo(sc,'CustAge')
ans=8×6 table
         Bin         Good    Bad     Odds        WOE       InfoValue
    _____________    ____    ___    ______    _________    _________

    {'[-Inf,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
    {'Totals'   }    803     397    2.0227          NaN     0.095205

Это первые 10 значений возраста в исходных данных, используемых, чтобы создать creditscorecard объект.

data(1:10,'CustAge')
ans=10×1 table
    CustAge
    _______

      53   
      61   
      47   
      50   
      68   
      65   
      34   
      50   
      50   
      49   

Преобразуйте тестовые данные в значения WOE. Для этого установите bindata аргумент пары "имя-значение" для 'OutputType' к 'WOE'.

bdata = bindata(sc,'OutputType','WOE');

Это первые 10 сгруппированных возрастов в формате WOE. Возрасты сопоставлены со значениями WOE, отображенными внутренне bininfo.

bdata(1:10,'CustAge')
ans=10×1 table
    CustAge 
    ________

     0.21378
     0.62245
     0.18758
     0.21378
     0.62245
     0.62245
    -0.39568
     0.21378
     0.21378
     0.21378

Это первые 10 сгруппированных возрастов в формате WOE. Возрасты сопоставлены со значениями WOE, отображенными внутренне bininfo.

bdata(1:10,'CustAge')
ans=10×1 table
    CustAge 
    ________

     0.21378
     0.62245
     0.18758
     0.21378
     0.62245
     0.62245
    -0.39568
     0.21378
     0.21378
     0.21378

Размер исходных данных и размер bdata выход является тем же самым потому что bindata листовые неиспользуемые переменные (такие как 'IDVar') неизменный и на месте.

whos data bdata
  Name          Size             Bytes  Class    Attributes

  bdata      1200x11            108987  table              
  data       1200x11             84603  table              

Значения отклика являются тем же самым в исходных данных и в сгруппированных данных потому что, по умолчанию, 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

Подбирая модель логистической регрессии с данными WOE, набор 'OutputType' аргумент пары "имя-значение" 'WOEModelInput'.

bdata = bindata(sc,'OutputType','WOEModelInput');

Сгруппированные данные о предикторе эквивалентны когда 'OutputType' аргумент пары "имя-значение" установлен в 'WOE'.

bdata(1:10,'CustAge')
ans=10×1 table
    CustAge 
    ________

     0.21378
     0.62245
     0.18758
     0.21378
     0.62245
     0.62245
    -0.39568
     0.21378
     0.21378
     0.21378

Однако размер исходных данных и размер bdata выход отличается. Это вызвано тем, что bindata удаляет неиспользуемые переменные (такие как 'IDVar').

whos data bdata
  Name          Size            Bytes  Class    Attributes

  bdata      1200x10            99167  table              
  data       1200x11            84603  table              

Значения отклика также изменяются в этом случае и сопоставлены так, чтобы "Хороший" был 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 объект, заданное использование таблицы. По умолчанию, data установлен в creditscorecard необработанные данные объекта.

Прежде, чем создать creditscorecard возразите, выполните задачу подготовки данных иметь соответственно структурированный data как введено к creditscorecard объект.

Типы данных: table

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: bdata = bindata(sc,'OutputType','WOE','ResponseFormat','Mapped')

Выходной формат в виде разделенной запятой пары, состоящей из 'OutputType' и вектор символов со следующими значениями:

  • BinNumber — Возвращает числа интервала, соответствующие каждому наблюдению.

  • Categorical — Возвращает метку интервала, соответствующую каждому наблюдению.

  • WOE — Возвращает Вес доказательства (WOE), соответствующий каждому наблюдению.

  • WOEModelInput — Используйте эту опцию при подбирании модели. Эта опция:

    • Возвращает Вес доказательства (WOE), соответствующий каждому наблюдению.

    • Возвращает переменные предикторы, но никакой IDVar или неиспользуемые переменные включены в выход.

    • Отбрасывания любые предикторы, интервалы которых имеют Inf или NaN Значения WOE.

    • Включает сопоставленную переменную отклика как последний столбец.

    Примечание

    Когда bindata аргумент пары "имя-значение" 'OutputType' установлен в 'WOEModelInput', bdata выведите только содержит столбцы, соответствующие предикторам, интервалы которых не имеют Inf или NaN Значения веса доказательства (WOE) и bdata включает сопоставленный ответ как последний столбец.

    Недостающие данные (если таковые имеются) включены в bdata выведите как недостающие данные также и не влияйте на правила отбросить предикторы когда 'OutputType' установлен в 'WOEModelInput'.

Типы данных: char

Формат значений отклика в виде разделенной запятой пары, состоящей из 'ResponseFormat' и вектор символов со следующими значениями:

  • RawData — Переменная отклика копируется неизменная в bdata вывод .

  • Mapped — Значения отклика изменяются (при необходимости) так, чтобы "Хороший" был сопоставлен с 1, и "Плохо" сопоставлен с 0.

Типы данных: char

Выходные аргументы

свернуть все

Сгруппированные переменные предикторы, возвращенные как таблица. Это - таблица, одного размера (см. исключение в следующем Примечании) как ввод данных, но только предикторы, заданные в creditscorecard PredictorVars объекта свойство сгруппировано, и остающиеся единицы неизменны.

Примечание

Когда bindata аргумент пары "имя-значение" 'OutputType' установлен в 'WOEModelInput', bdata выведите только содержит столбцы, соответствующие предикторам, интервалы которых не имеют Inf или NaN Значения веса доказательства (WOE) и bdata включает сопоставленный ответ как последний столбец.

Недостающие данные (если таковые имеются) включены в bdata выведите как недостающие данные также и не влияйте на правила отбросить предикторы когда 'OutputType' установлен в 'WOEModelInput'.

Ссылки

[1] Андерсон, R. Инструментарий рейтинга кредитоспособности. Издательство Оксфордского университета, 2007.

[2] Refaat, M. Протоколы результатов Кредитного риска: Разработка и Реализация Используя SAS. lulu.com, 2011.

Введенный в R2014b