Как рассчитать статистику кредитного плеча в r
В статистике наблюдение считается выбросом , если его значение для переменной ответа намного больше, чем у остальных наблюдений в наборе данных.
Аналогичным образом, наблюдение считается высоким рычагом воздействия , если оно имеет одно или несколько значений переменных-предсказателей, которые являются гораздо более экстремальными по сравнению с остальными наблюдениями в наборе данных.
Одним из первых шагов в любом типе анализа является более пристальное изучение наблюдений, которые имеют высокую эффективность, поскольку они могут оказать большое влияние на результаты данной модели.
В этом руководстве показан пошаговый пример того, как рассчитать и визуализировать рычаг для каждого наблюдения в модели в R.
Шаг 1. Создайте регрессионную модель
Сначала мы создадим модель множественной линейной регрессии, используя набор данных mtcars , встроенный в R:
#load the dataset data(mtcars) #fit a regression model model <- lm(mpg~disp+hp, data=mtcars) #view model summary summary(model) Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 30.735904 1.331566 23.083 < 2nd-16 *** available -0.030346 0.007405 -4.098 0.000306 *** hp -0.024840 0.013385 -1.856 0.073679 . --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 3.127 on 29 degrees of freedom Multiple R-squared: 0.7482, Adjusted R-squared: 0.7309 F-statistic: 43.09 on 2 and 29 DF, p-value: 2.062e-09
Шаг 2. Рассчитайте рычаг для каждого наблюдения.
Далее мы воспользуемся функцией Hatvalues() для расчета рычага для каждого наблюдения в модели:
#calculate leverage for each observation in the model hats <- as . data . frame (hatvalues(model)) #display leverage stats for each observation hats hatvalues(model) Mazda RX4 0.04235795 Mazda RX4 Wag 0.04235795 Datsun 710 0.06287776 Hornet 4 Drive 0.07614472 Hornet Sportabout 0.08097817 Valiant 0.05945972 Duster 360 0.09828955 Merc 240D 0.08816960 Merc 230 0.05102253 Merc 280 0.03990060 Merc 280C 0.03990060 Merc 450SE 0.03890159 Merc 450SL 0.03890159 Merc 450SLC 0.03890159 Cadillac Fleetwood 0.19443875 Lincoln Continental 0.16042361 Chrysler Imperial 0.12447530 Fiat 128 0.08346304 Honda Civic 0.09493784 Toyota Corolla 0.08732818 Toyota Corona 0.05697867 Dodge Challenger 0.06954069 AMC Javelin 0.05767659 Camaro Z28 0.10011654 Pontiac Firebird 0.12979822 Fiat X1-9 0.08334018 Porsche 914-2 0.05785170 Lotus Europa 0.08193899 Ford Pantera L 0.13831817 Ferrari Dino 0.12608583 Maserati Bora 0.49663919 Volvo 142E 0.05848459
Обычно мы внимательно изучаем наблюдения со значением кредитного плеча больше 2.
Простой способ сделать это — отсортировать наблюдения по значению их кредитного плеча в порядке убывания:
#sort observations by leverage, descending hats[ order (-hats[' hatvalues(model) ']), ] [1] 0.49663919 0.19443875 0.16042361 0.13831817 0.12979822 0.12608583 [7] 0.12447530 0.10011654 0.09828955 0.09493784 0.08816960 0.08732818 [13] 0.08346304 0.08334018 0.08193899 0.08097817 0.07614472 0.06954069 [19] 0.06287776 0.05945972 0.05848459 0.05785170 0.05767659 0.05697867 [25] 0.05102253 0.04235795 0.04235795 0.03990060 0.03990060 0.03890159 [31] 0.03890159 0.03890159
Мы видим, что максимальное значение кредитного плеча составляет 0,4966 . Поскольку это число не превышает 2, мы знаем, что ни одно из наблюдений в нашем наборе данных не имеет высокой эффективности.
Шаг 3. Визуализируйте влияние каждого наблюдения
Наконец, мы можем создать быструю диаграмму, чтобы визуализировать рычаги воздействия для каждого наблюдения:
#plot leverage values for each observation plot(hatvalues(model), type = ' h ')
По оси X отображается индекс каждого наблюдения в наборе данных, а по оси Y отображается соответствующая статистика рычага для каждого наблюдения.
Дополнительные ресурсы
Как выполнить простую линейную регрессию в R
Как выполнить множественную линейную регрессию в R
Как создать остаточный график в R