Хосмер-Лемешоу тест на пригодность. Полученная ошибка.
Я удалил NA с complete.cases (), затем запустил модель lm (): model.farm; затем вызвал тест Хосмера-Лемешова о соответствии качества [hoslem.test ()].
По-прежнему получаю ошибку на model.frame для переменных длин, найденных для 'cutyhat'; проверил загрузку стека, что указывает на то, что модель имела NA, поэтому я вызвал другую модель с удаленным NA с помощью complete.cases (). Застрял в этом выпуске hoslem.test () ..
df_farmpond <- df_farmpond[complete.cases(df_farmpond),]
hl_test <- hoslem.test(model.farm.lm$y, fitted(model.farm.lm), g = 5)
> hl_test
Hosmer and Lemeshow goodness of fit (GOF) test
data: model.farm.lm$y, fitted(model.farm.lm)
X-squared = 3.705, df = 3, p-value = 0.2951
Детали модели:
model.farm.lm$y [ notice below that for the attr(response) is 1
model.farm.lm$coefficients
model.farm.lm$residuals
model.farm.lm$terms
Выходы:
> model.farm.lm$y
NULL
> model.farm.lm$coefficients
(Intercept) TOTNITR W_DEPTH_MEAN TURB DISOXY
0.9418943249 0.0379515587 -0.0063822052 -0.0066322266 -0.0001687033
COND TEMP POND_AREA
-0.0010308852 0.0125638141 -0.1234772509
> model.farm.lm$residuals
1 2 3 4 5 6
0.13858538 0.38573515 -0.73602796 -0.04587555 0.04449845 0.22675387
7 8 9 10 11 12
0.10548684 -0.71244779 -0.84780380 -0.46894026 0.27773610 -0.35107919
13 14 15 16 17 18
-0.54448867 -0.36493492 0.30847012 0.64836035 0.08619462 0.19139021
19 20 21 22 23 24
0.14290952 0.36942073 -0.78639655 0.24397498 0.08221528 0.30072828
25 26 27 28 29 30
0.35988554 0.33902600 0.14086306 0.09742289 0.03935141 0.27621187
31 32 33 34 35 36
0.09366211 0.32327669 0.15211771 0.11306520 0.07397839 0.39980076
37 38 39 40
0.12688801 -0.57702384 0.04345443 -0.69644542
> model.farm.lm$terms
RICH ~ TOTNITR + W_DEPTH_MEAN + TURB + DISOXY + COND + TEMP +
POND_AREA
attr(,"variables")
list(RICH, TOTNITR, W_DEPTH_MEAN, TURB, DISOXY, COND, TEMP, POND_AREA)
attr(,"factors")
TOTNITR W_DEPTH_MEAN TURB DISOXY COND TEMP POND_AREA
RICH 0 0 0 0 0 0 0
TOTNITR 1 0 0 0 0 0 0
W_DEPTH_MEAN 0 1 0 0 0 0 0
TURB 0 0 1 0 0 0 0
DISOXY 0 0 0 1 0 0 0
COND 0 0 0 0 1 0 0
TEMP 0 0 0 0 0 1 0
POND_AREA 0 0 0 0 0 0 1
attr(,"term.labels")
[1] "TOTNITR" "W_DEPTH_MEAN" "TURB" "DISOXY" "COND"
[6] "TEMP" "POND_AREA"
attr(,"order")
[1] 1 1 1 1 1 1 1
attr(,"intercept")
[1] 1
attr(,"response")
[1] 1
attr(,".Environment")
<environment: R_GlobalEnv>
attr(,"predvars")
list(RICH, TOTNITR, W_DEPTH_MEAN, TURB, DISOXY, COND, TEMP, POND_AREA)
attr(,"dataClasses")
RICH TOTNITR W_DEPTH_MEAN TURB DISOXY COND
"numeric" "numeric" "numeric" "numeric" "numeric" "numeric"
TEMP POND_AREA
"numeric" "numeric"
>
Проблеск данных:
glimpse(df_farmpond)
Observations: 40
Variables: 9
$ RICH <int> 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, …
$ FISH <int> 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, …
$ TOTNITR <dbl> 0.56485714, 0.78157143, 0.84057143, 0.14528571, 0.1934…
$ W_DEPTH_MEAN <dbl> 26.56, 27.61, 13.95, 7.10, 7.54, 26.39, 16.66, 8.20, 9…
$ TURB <dbl> 9.900000, 38.416667, 15.533333, 17.400000, 20.542857, …
$ DISOXY <dbl> 9.639286, 11.457143, 9.871429, 13.085714, 10.292857, 1…
$ COND <dbl> 91.87500, 173.83333, 262.50000, 333.65476, 67.46429, 1…
$ TEMP <dbl> 22.30357, 22.83929, 22.75000, 23.42857, 22.71429, 22.2…
$ POND_AREA <dbl> 0.41, 0.26, 0.48, 5.58, 0.19, 0.04, 0.12, 0.30, 0.06, …
Модель:
formula_farm_AIC <- RICH ~ TOTNITR + W_DEPTH_MEAN + TURB + DISOXY + COND + TEMP + POND_AREA
model.farm.lm <- glm(formula = formula_farm_AIC, data = df_farmpond, family = binomial)
Выполнение для создания модели glm:
> formula_farm_AIC <- RICH ~ TOTNITR + W_DEPTH_MEAN + TURB + DISOXY + COND + TEMP + POND_AREA
> model.farm.lm <- glm(formula = formula_farm_AIC, data = df_farmpond, family = binomial)
Warning message:
glm.fit: fitted probabilities numerically 0 or 1 occurred
>
Сводка (model.farm.lm):
> summary(model.farm.lm)
Call:
glm(formula = formula_farm_AIC, family = binomial, data = df_farmpond)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.82885 -0.08443 0.31020 0.53238 1.52997
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 5.998810 5.925687 1.012 0.3114
TOTNITR -3.141090 1.776385 -1.768 0.0770 .
W_DEPTH_MEAN -0.039468 0.074696 -0.528 0.5972
TURB -0.025171 0.035452 -0.710 0.4777
DISOXY -0.155921 0.214229 -0.728 0.4667
COND -0.008091 0.003886 -2.082 0.0373 *
TEMP 0.053846 0.249877 0.215 0.8294
POND_AREA -0.733638 0.739312 -0.992 0.3210
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 50.446 on 39 degrees of freedom
Residual deviance: 30.048 on 32 degrees of freedom
AIC: 46.048
Number of Fisher Scoring iterations: 8