# NOT RUN {
## READING IN HAND-CODED SIMULATIONS
testData = createData(sampleSize = 50, randomEffectVariance = 0)
fittedModel <- glm(observedResponse ~ Environment1, data = testData, family = "poisson")
# in DHARMA, using the simulate.glm function of glm
sims = simulateResiduals(fittedModel)
plot(sims, quantreg = FALSE)
# Doing the same with a handcoded simulate function.
# of course this code will only work with a 1-par glm model
simulateMyfit <- function(n=10, fittedModel){
int = coef(fittedModel)[1]
slo = coef(fittedModel)[2]
pred = exp(int + slo * testData$Environment1)
predSim = replicate(n, rpois(length(pred), pred))
return(predSim)
}
sims = simulateMyfit(250, fittedModel)
dharmaRes <- createDHARMa(simulatedResponse = sims,
observedResponse = testData$observedResponse,
fittedPredictedResponse = predict(fittedModel, type = "response"),
integer = TRUE)
plot(dharmaRes, quantreg = FALSE)
# }
Run the code above in your browser using DataLab