Hi
I built a model included spatial effect, and the residuals plot looks strange:
#Original data
aggreData <- weight_arraData %>%
stats::aggregate(cbind(log_PF,log_FR,log_SE,
log_TE, HMI_val, dem_val, treeCov_val, tmp_val,
prep_val, centLon,centLat, median_SNR)~
year+month+Birdtree_name+square, mean) %>%
mutate(weight_SNR = case_when(median_SNR<10 ~median_SNR^2,
median_SNR>=10 ~10^2),
weight = weight_SNR/mean (weight_SNR),
ID = row_number())
#Spatial effect
data_sf <- st_as_sf(aggreData,
coords = c("centLon","centLat"),crs = 4326,agr = "constant")
st_crs(data_sf)
gal <- dnearneigh(data_sf,0,1.5)
spa_PF <- formula(log_FR ~ HMI_val + dem_val + treeCov_val + tmp_val +
prep_val +
f(ID, model = 'besag',graph = gal, scale.model = T) +
f(Birdtree_name, model = 'iid') +
f(year, model = 'iid')
)
spa.model <- inla(formula =
spa_FR ,
data=
aggreData ,family = family,
weights = aggreData$weight,
control.predictor=list(compute=TRUE),
control.compute = list(dic=T,waic=T,cpo=T,
return.marginals.predictor=T,
residuals =T))
spaPhy_res_FR <- data.frame(res = spaPhy.model_FR1$residuals,
med_SNR = phylo_aggreData$median_SNR)
plot(y= spa_res_FR$deviance.residuals, x= spa_res_FR$med_SNR)
The plots of the residuals displays a gap:
Are there any mistakes or errors with my model?
Thanks!