exponenta event banner

счет

Вычисление кредитных баллов для данных

Описание

пример

Scores = score(sc) вычисляет кредитные баллы для creditscorecard учебные данные объекта. Эти данные могут быть «обучающим» или «живым» набором данных. Если data входной аргумент не предоставляется явным образом, score функция определяет баллы для существующего creditscorecard данные объекта.

formatpoints поддерживает несколько альтернатив для изменения масштабирования баллов, а также может использоваться для управления округлением баллов и баллов, и независимо от того, сообщаются ли базовые баллы отдельно или распределяются по предикторам. Отсутствующие данные преобразуются в NaN значения для соответствующих баллов и, следовательно, для общего балла. Использовать formatpoints для изменения поведения оценки для строк с отсутствующими данными.

пример

Scores = score(sc, data) вычисляет кредитные баллы для данного ввода data. Эти данные могут быть «обучающим» или «живым» набором данных.

formatpoints поддерживает несколько альтернатив для изменения масштабирования баллов, а также может использоваться для управления округлением баллов и баллов, и независимо от того, сообщаются ли базовые баллы отдельно или распределяются по предикторам. Отсутствующие данные преобразуются в NaN значения для соответствующих баллов и, следовательно, для общего балла. Использовать formatpoints для изменения поведения оценки для строк с отсутствующими данными.

пример

[Scores,Points] = score(sc) вычисляет кредитные баллы и баллы для данных. Если data входной аргумент не предоставляется явным образом, score функция определяет баллы для существующего creditscorecard данные объекта.

formatpoints поддерживает несколько альтернатив для изменения масштабирования баллов, а также может использоваться для управления округлением баллов и баллов, и независимо от того, сообщаются ли базовые баллы отдельно или распределяются по предикторам. Отсутствующие данные преобразуются в NaN значения для соответствующих баллов и, следовательно, для общего балла. Использовать formatpoints для изменения поведения оценки для строк с отсутствующими данными.

пример

[Scores,Points] = score(sc,data) вычисляет кредитные баллы и баллы для данного ввода data. Эти данные могут быть «обучающим» или «живым» набором данных.

formatpoints поддерживает несколько альтернатив для изменения масштабирования баллов, а также может использоваться для управления округлением баллов и баллов, и независимо от того, сообщаются ли базовые баллы отдельно или распределяются по предикторам. Отсутствующие данные преобразуются в NaN значения для соответствующих баллов и, следовательно, для общего балла. Использовать formatpoints для изменения поведения оценки для строк с отсутствующими данными.

Примеры

свернуть все

В этом примере показано, как использовать score для получения баллов за данные обучения.

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

load CreditCardData 
sc = creditscorecard(data,'IDVar','CustID');

Выполните автоматическое binning to bin для всех предикторов.

sc = autobinning(sc);

Подгонка модели линейной регрессии с использованием параметров по умолчанию.

sc = fitmodel(sc);
1. Adding CustIncome, Deviance = 1490.8527, Chi2Stat = 32.588614, PValue = 1.1387992e-08
2. Adding TmWBank, Deviance = 1467.1415, Chi2Stat = 23.711203, PValue = 1.1192909e-06
3. Adding AMBalance, Deviance = 1455.5715, Chi2Stat = 11.569967, PValue = 0.00067025601
4. Adding EmpStatus, Deviance = 1447.3451, Chi2Stat = 8.2264038, PValue = 0.0041285257
5. Adding CustAge, Deviance = 1441.994, Chi2Stat = 5.3511754, PValue = 0.020708306
6. Adding ResStatus, Deviance = 1437.8756, Chi2Stat = 4.118404, PValue = 0.042419078
7. Adding OtherCC, Deviance = 1433.707, Chi2Stat = 4.1686018, PValue = 0.041179769

Generalized linear regression model:
    status ~ [Linear formula with 8 terms in 7 predictors]
    Distribution = Binomial

Estimated Coefficients:
                   Estimate       SE       tStat       pValue  
                   ________    ________    ______    __________

    (Intercept)    0.70239     0.064001    10.975    5.0538e-28
    CustAge        0.60833      0.24932      2.44      0.014687
    ResStatus        1.377      0.65272    2.1097      0.034888
    EmpStatus      0.88565        0.293    3.0227     0.0025055
    CustIncome     0.70164      0.21844    3.2121     0.0013179
    TmWBank         1.1074      0.23271    4.7589    1.9464e-06
    OtherCC         1.0883      0.52912    2.0569      0.039696
    AMBalance        1.045      0.32214    3.2439     0.0011792


1200 observations, 1192 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 89.7, p-value = 1.4e-16

Оценка данных обучения с помощью score функция без дополнительного ввода для data. По умолчанию он возвращает немасштабированные баллы. Для краткости отображаются только первые десять баллов.

Scores = score(sc);
disp(Scores(1:10))
    1.0968
    1.4646
    0.7662
    1.5779
    1.4535
    1.8944
   -0.0872
    0.9207
    1.0399
    0.8252

Масштабировать баллы и отображать как баллы, так и баллы для каждого человека в данных обучения (для краткости отображаются только первые десять строк). Для других методов масштабирования и других параметров форматирования точек и баллов используйте formatpoints функция.

sc = formatpoints(sc,'WorstAndBestScores',[300 850]);
[Scores,Points] = score(sc);
disp(Scores(1:10))
  602.0394
  648.1988
  560.5569
  662.4189
  646.8109
  702.1398
  453.4572
  579.9475
  594.9064
  567.9533
disp(Points(1:10,:))
    CustAge    ResStatus    EmpStatus    CustIncome    TmWBank    OtherCC    AMBalance
    _______    _________    _________    __________    _______    _______    _________

    95.256      62.421       56.765        121.18      116.05     86.224       64.15  
    126.46      82.276       105.81        121.18      62.107     86.224       64.15  
    93.256      62.421       105.81        76.585      116.05     42.287       64.15  
    95.256      82.276       105.81        121.18      60.719     86.224      110.96  
    126.46      82.276       105.81        121.18      60.719     86.224       64.15  
    126.46      82.276       105.81        121.18      116.05     86.224       64.15  
    48.727      82.276       56.765        53.208      62.107     86.224       64.15  
    95.256      113.58       105.81        121.18      62.107     42.287      39.729  
    95.256      62.421       56.765        121.18      62.107     86.224      110.96  
    95.256      82.276       56.765        121.18      62.107     86.224       64.15  

В этом примере описывается назначение точек для отсутствующих данных при 'BinMissingData' параметр имеет значение true.

  • Предикторы, у которых отсутствуют данные в обучающем наборе, имеют явное место для <missing> с соответствующими баллами в итоговой карте показателей. Эти точки вычисляются на основе значения веса доказательств (WOE) для <missing> bin и коэффициенты логистической модели. В целях оценки эти баллы присваиваются отсутствующим значениям и значениям вне диапазона.

  • Предикторы без отсутствующих данных в обучающем наборе не имеют <missing> bin, поэтому невозможно оценить WOE по данным обучения. По умолчанию точки для отсутствующих и выходящих за пределы диапазона значений имеют значение NaN, и это приводит к оценке NaN при выполнении score. Для предикторов, не имеющих явных <missing> bin, используйте аргумент имя-значение 'Missing' в formatpoints чтобы указать, как недостающие данные должны рассматриваться в целях оценки.

Создать creditscorecard с использованием CreditCardData.mat для загрузки файла dataMissing с отсутствующими значениями.

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   

fprintf('Number of rows: %d\n',height(dataMissing))
Number of rows: 1200
fprintf('Number of missing values CustAge: %d\n',sum(ismissing(dataMissing.CustAge)))
Number of missing values CustAge: 30
fprintf('Number of missing values ResStatus: %d\n',sum(ismissing(dataMissing.ResStatus)))
Number of missing values ResStatus: 40

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

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 и CustIncome. При этом любая отрицательная возрастная или доходная информация становится недействительной или «вне диапазона». В целях оценки значения вне диапазона присваиваются тем же баллам, что и отсутствующие значения.

sc = modifybins(sc,'CustAge','MinValue',0);
sc = modifybins(sc,'CustIncome','MinValue',0);

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

[bi,cp] = bininfo(sc,'CustAge');
disp(bi)
         Bin         Good    Bad     Odds       WOE       InfoValue 
    _____________    ____    ___    ______    ________    __________

    {'[0,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. The axes 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. The axes with title ResStatus contains 3 objects of type bar, line. These objects represent Good, Bad.

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

Для EmpStatus и CustIncome отсутствует явная ячейка для отсутствующих значений, поскольку данные обучения не содержат отсутствующих значений для этих предикторов.

bi = bininfo(sc,'EmpStatus');
disp(bi)
        Bin         Good    Bad     Odds       WOE       InfoValue
    ____________    ____    ___    ______    ________    _________

    {'Unknown' }    396     239    1.6569    -0.19947    0.021715 
    {'Employed'}    407     158    2.5759      0.2418    0.026323 
    {'Totals'  }    803     397    2.0227         NaN    0.048038 
bi = bininfo(sc,'CustIncome');
disp(bi)
           Bin           Good    Bad     Odds         WOE       InfoValue 
    _________________    ____    ___    _______    _________    __________

    {'[0,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,Inf]'  }    183      56     3.2679      0.47972      0.041657
    {'Totals'       }    803     397     2.0227          NaN       0.12285

Использовать fitmodel чтобы соответствовать модели логистической регрессии с использованием данных веса доказательств (WOE). fitmodel внутренне преобразует все переменные предиктора в значения WOE, используя ячейки, найденные в процессе автоматического объединения. fitmodel затем подходит модель логистической регрессии с использованием пошагового метода (по умолчанию). Для предикторов, у которых отсутствуют данные, существует явное <missing> bin, с соответствующим значением WOE, вычисленным на основе данных. При использовании fitmodel, соответствующее значение WOE для <missing> применяется при выполнении преобразования WOE.

[sc,mdl] = fitmodel(sc);
1. Adding CustIncome, Deviance = 1490.8527, Chi2Stat = 32.588614, PValue = 1.1387992e-08
2. Adding TmWBank, Deviance = 1467.1415, Chi2Stat = 23.711203, PValue = 1.1192909e-06
3. Adding AMBalance, Deviance = 1455.5715, Chi2Stat = 11.569967, PValue = 0.00067025601
4. Adding EmpStatus, Deviance = 1447.3451, Chi2Stat = 8.2264038, PValue = 0.0041285257
5. Adding CustAge, Deviance = 1442.8477, Chi2Stat = 4.4974731, PValue = 0.033944979
6. Adding ResStatus, Deviance = 1438.9783, Chi2Stat = 3.86941, PValue = 0.049173805
7. Adding OtherCC, Deviance = 1434.9751, Chi2Stat = 4.0031966, PValue = 0.045414057

Generalized linear regression model:
    status ~ [Linear formula with 8 terms in 7 predictors]
    Distribution = Binomial

Estimated Coefficients:
                   Estimate       SE       tStat       pValue  
                   ________    ________    ______    __________

    (Intercept)    0.70229     0.063959     10.98    4.7498e-28
    CustAge        0.57421      0.25708    2.2335      0.025513
    ResStatus       1.3629      0.66952    2.0356       0.04179
    EmpStatus      0.88373       0.2929    3.0172      0.002551
    CustIncome     0.73535       0.2159     3.406    0.00065929
    TmWBank         1.1065      0.23267    4.7556    1.9783e-06
    OtherCC         1.0648      0.52826    2.0156      0.043841
    AMBalance       1.0446      0.32197    3.2443     0.0011775


1200 observations, 1192 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 88.5, p-value = 2.55e-16

Масштабируйте точки карты показателей по методу «points, bodds and points to удвоить шансы (PDO)» с помощью 'PointsOddsAndPDO' аргумент formatpoints. Предположим, что вы хотите, чтобы оценка 500 очков иметь шансы 2 (в два раза больше вероятность быть хорошим, чем быть плохим) и что шансы удвоить каждые 50 очков (так что 550 очков будет иметь шансы 4).

Отображение карты показателей, показывающей масштабированные точки для предикторов, сохраненных в модели фитинга.

sc = formatpoints(sc,'PointsOddsAndPDO',[500 2 50]);
PointsInfo = displaypoints(sc)
PointsInfo=38×3 table
     Predictors           Bin          Points
    _____________    ______________    ______

    {'CustAge'  }    {'[0,33)'    }    54.062
    {'CustAge'  }    {'[33,37)'   }    56.282
    {'CustAge'  }    {'[37,40)'   }    60.012
    {'CustAge'  }    {'[40,46)'   }    69.636
    {'CustAge'  }    {'[46,48)'   }    77.912
    {'CustAge'  }    {'[48,51)'   }     78.86
    {'CustAge'  }    {'[51,58)'   }     80.83
    {'CustAge'  }    {'[58,Inf]'  }     96.76
    {'CustAge'  }    {'<missing>' }    64.984
    {'ResStatus'}    {'Tenant'    }    62.138
    {'ResStatus'}    {'Home Owner'}    73.248
    {'ResStatus'}    {'Other'     }    90.828
    {'ResStatus'}    {'<missing>' }    74.125
    {'EmpStatus'}    {'Unknown'   }    58.807
    {'EmpStatus'}    {'Employed'  }    86.937
    {'EmpStatus'}    {'<missing>' }       NaN
      ⋮

Обратите внимание, что точки для <missing> ячейка для CustAge и ResStatus явно показаны (как 64.9836 и 74.1250соответственно). Эти точки вычисляются на основе значения WOE для <missing> bin и коэффициенты логистической модели.

Для предикторов, не имеющих отсутствующих данных в обучающем наборе, нет явных <missing> бункер. По умолчанию для точек установлено значение NaN для отсутствующих данных и они приводят к оценке NaN при выполнении score. Для предикторов, не имеющих явных <missing> bin, используйте аргумент имя-значение 'Missing' в formatpoints чтобы указать, как недостающие данные должны рассматриваться в целях оценки.

Для иллюстрации возьмите несколько строк из исходных данных в качестве тестовых данных и введите некоторые отсутствующие данные. Также введите некоторые недопустимые значения или значения вне диапазона. Для числовых данных допустимые значения ниже минимального (или выше максимального) считаются недопустимыми, например, отрицательное значение для возраста (отзыв 'MinValue' был ранее установлен в значение 0 для CustAge и CustIncome). Для категориальных данных недопустимыми значениями являются категории, явно не включенные в карту показателей, например, статус резидентности, ранее не сопоставленный с категориями карт показателей, например «Дом», или бессмысленная строка, например «abc123».

tdata = dataMissing(11:18,mdl.PredictorNames); % Keep only the predictors retained in the model
% Set some missing values
tdata.CustAge(1) = NaN;
tdata.ResStatus(2) = '<undefined>';
tdata.EmpStatus(3) = '<undefined>';
tdata.CustIncome(4) = NaN;
% Set some invalid values
tdata.CustAge(5) = -100;
tdata.ResStatus(6) = 'House';
tdata.EmpStatus(7) = 'Freelancer';
tdata.CustIncome(8) = -1;
disp(tdata)
    CustAge     ResStatus      EmpStatus     CustIncome    TmWBank    OtherCC    AMBalance
    _______    ___________    ___________    __________    _______    _______    _________

      NaN      Tenant         Unknown          34000         44         Yes        119.8  
       48      <undefined>    Unknown          44000         14         Yes       403.62  
       65      Home Owner     <undefined>      48000          6         No        111.88  
       44      Other          Unknown            NaN         35         No        436.41  
     -100      Other          Employed         46000         16         Yes       162.21  
       33      House          Employed         36000         36         Yes       845.02  
       39      Tenant         Freelancer       34000         40         Yes       756.26  
       24      Home Owner     Employed            -1         19         Yes       449.61  

Оцените новые данные и посмотрите, как точки назначаются для отсутствующих CustAge и ResStatus, потому что у нас есть явная ячейка с точками для <missing>. Однако для EmpStatus и CustIncome score функция устанавливает точки на NaN.

[Scores,Points] = score(sc,tdata);
disp(Scores)
  481.2231
  520.8353
       NaN
       NaN
  551.7922
  487.9588
       NaN
       NaN
disp(Points)
    CustAge    ResStatus    EmpStatus    CustIncome    TmWBank    OtherCC    AMBalance
    _______    _________    _________    __________    _______    _______    _________

    64.984      62.138       58.807        67.893      61.858     75.622      89.922  
     78.86      74.125       58.807        82.439      61.061     75.622      89.922  
     96.76      73.248          NaN        96.969      51.132     50.914      89.922  
    69.636      90.828       58.807           NaN      61.858     50.914      89.922  
    64.984      90.828       86.937        82.439      61.061     75.622      89.922  
    56.282      74.125       86.937        70.107      61.858     75.622      63.028  
    60.012      62.138          NaN        67.893      61.858     75.622      63.028  
    54.062      73.248       86.937           NaN      61.061     75.622      89.922  

Использовать аргумент имя-значение 'Missing' в formatpoints выбор способа назначения точек отсутствующим значениям для предикторов, не имеющих явного <missing> бункер. В этом примере используйте 'MinPoints' для опции 'Missing' аргумент. Минимальные баллы для EmpStatus в карте показателей, показанной выше, 58.8072, и для CustIncome минимальные баллы: 29.3753.

sc = formatpoints(sc,'Missing','MinPoints');
[Scores,Points] = score(sc,tdata);
disp(Scores)
  481.2231
  520.8353
  517.7532
  451.3405
  551.7922
  487.9588
  449.3577
  470.2267
disp(Points)
    CustAge    ResStatus    EmpStatus    CustIncome    TmWBank    OtherCC    AMBalance
    _______    _________    _________    __________    _______    _______    _________

    64.984      62.138       58.807        67.893      61.858     75.622      89.922  
     78.86      74.125       58.807        82.439      61.061     75.622      89.922  
     96.76      73.248       58.807        96.969      51.132     50.914      89.922  
    69.636      90.828       58.807        29.375      61.858     50.914      89.922  
    64.984      90.828       86.937        82.439      61.061     75.622      89.922  
    56.282      74.125       86.937        70.107      61.858     75.622      63.028  
    60.012      62.138       58.807        67.893      61.858     75.622      63.028  
    54.062      73.248       86.937        29.375      61.061     75.622      89.922  

В этом примере показано, как использовать score для получения оценок для нового набора данных (например, валидации или тестового набора данных) с использованием дополнительного 'data' входные данные в score функция.

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

load CreditCardData 
sc = creditscorecard(data,'IDVar','CustID');

Выполните автоматическое binning to bin для всех предикторов.

sc = autobinning(sc);

Подгонка модели линейной регрессии с использованием параметров по умолчанию.

sc = fitmodel(sc);
1. Adding CustIncome, Deviance = 1490.8527, Chi2Stat = 32.588614, PValue = 1.1387992e-08
2. Adding TmWBank, Deviance = 1467.1415, Chi2Stat = 23.711203, PValue = 1.1192909e-06
3. Adding AMBalance, Deviance = 1455.5715, Chi2Stat = 11.569967, PValue = 0.00067025601
4. Adding EmpStatus, Deviance = 1447.3451, Chi2Stat = 8.2264038, PValue = 0.0041285257
5. Adding CustAge, Deviance = 1441.994, Chi2Stat = 5.3511754, PValue = 0.020708306
6. Adding ResStatus, Deviance = 1437.8756, Chi2Stat = 4.118404, PValue = 0.042419078
7. Adding OtherCC, Deviance = 1433.707, Chi2Stat = 4.1686018, PValue = 0.041179769

Generalized linear regression model:
    status ~ [Linear formula with 8 terms in 7 predictors]
    Distribution = Binomial

Estimated Coefficients:
                   Estimate       SE       tStat       pValue  
                   ________    ________    ______    __________

    (Intercept)    0.70239     0.064001    10.975    5.0538e-28
    CustAge        0.60833      0.24932      2.44      0.014687
    ResStatus        1.377      0.65272    2.1097      0.034888
    EmpStatus      0.88565        0.293    3.0227     0.0025055
    CustIncome     0.70164      0.21844    3.2121     0.0013179
    TmWBank         1.1074      0.23271    4.7589    1.9464e-06
    OtherCC         1.0883      0.52912    2.0569      0.039696
    AMBalance        1.045      0.32214    3.2439     0.0011792


1200 observations, 1192 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 89.7, p-value = 1.4e-16

Для иллюстрации предположим, что несколько строк из исходных данных являются нашими «новыми» данными. Используйте дополнительный параметр data входной аргумент в score функция для получения баллов для newdata.

newdata = data(10:20,:);
Scores = score(sc,newdata)
Scores = 11×1

    0.8252
    0.6553
    1.2443
    0.9478
    0.5690
    1.6192
    0.4899
    0.3824
    0.2945
    1.4401
      ⋮

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

свернуть все

Модель кредитной карты показателей, указанная как creditscorecard объект. Использовать creditscorecard для создания creditscorecard объект.

(Необязательно) Набор данных для оценки, указанный как таблица MATLAB ®, где каждая строка соответствует отдельным наблюдениям. data должен содержать столбцы для каждого из предикторов в creditscorecard объект.

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

свернуть все

Оценки для каждого наблюдения, возвращенные как вектор.

Точки на предиктор для каждого наблюдения, возвращаемые в виде таблицы.

Алгоритмы

Оценка индивидуума i дается по формуле

Score(i) = Shift + Slope*(b0 + b1*WOE1(i) + b2*WOE2(i)+ ... +bp*WOEp(i))

где bj - коэффициент j-й переменной в модели, а WOEj (i) - значение веса доказательства (WOE) для i-го индивидуума, соответствующего j-й переменной модели .Shift и Slope - это константы масштабирования, которыми можно управлять с помощью formatpoints.

Если данные для отдельного i находятся в i-й строке данного набора данных, для вычисления оценки данные (i, j) связываются с использованием существующих карт связывания и преобразуются в соответствующее значение веса доказательства.WOEj (i). Используя коэффициенты модели, немасштабированный балл вычисляется как

 s = b0 + b1*WOE1(i) + ... +bp*WOEp(i).

Для простоты предположим в приведенном выше описании, что j-я переменная в модели является j-м столбцом на входе данных, хотя, в общем, порядок переменных в данном наборе данных не должен соответствовать порядку переменных в модели, и набор данных может иметь дополнительные переменные, которые не используются в модели.

Опциями форматирования можно управлять с помощью formatpoints.

Ссылки

[1] Андерсон, R. The Credit Скоринг Toolkit. Издательство Оксфордского университета, 2007 год.

[2] Рефаат, М. Карты оценки кредитных рисков: разработка и внедрение с использованием SAS. lulu.com, 2011.

Представлен в R2014b