Nothing
## ----include = FALSE------------------------------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup, include=FALSE-------------------------------------------------------------------------
library(inlabru)
## ----eval=FALSE-----------------------------------------------------------------------------------
# pred <- predict(fit, newdata, formula = ~ exp(eta), n.samples = 2000)
# post_E <- pred$mean
# post_Var <- pred$mean + pred$sd^2
# SE_score <- (newdata$y - post_E)^2
# DS_score <- (newdata$y - post_E)^2 / post_Var + log(post_Var)
## ----eval=FALSE-----------------------------------------------------------------------------------
# pred <- predict(fit,
# newdata,
# formula = ~ dpois(y, rate = exp(eta)),
# n.samples = 2000
# )
# log_score <- log(pred$mean)
## ----eval=FALSE-----------------------------------------------------------------------------------
# # some large value, so that 1-F(K) is small
# max_K <- ceiling(max(y)) + 4 * sqrt(max(y))
# pred <- generate(fit, newdata,
# formula = ~ {
# lambda <- exp(eta)
# k <- seq(0, max_K)
# do.call(
# cbind,
# lapply(
# seq_along(y),
# function(i) {
# Fpred <- ppois(k, rate = lambda[i])
# data.frame(
# k = c(k, k),
# i = c(i, i),
# type = rep(c("F", "residual"), each = length(Fpred)),
# value = c(Fpred, Fpred - (y[i] <= k))
# )
# }
# )
# )
# },
# n.samples = 2000
# )
# F_estimate <-
# (pred %>%
# filter(type == "F") %>%
# group_by(i) %>%
# summarise(F = sum(mean), groups = "drop") %>%
# pull("F"))
# crps_score <-
# (pred %>%
# filter(type == "residual") %>%
# group_by(i) %>%
# summarise(crps = sum(mean^2), groups = "drop") %>%
# pull(crps))
# # Check that the cutoff point K has nearly probability mass 1 below it,
# # for all i:
# min(F_estimate)
## ----eval=FALSE-----------------------------------------------------------------------------------
# pred <- predict(fit, newdata, formula = ~ exp(eta))
# scores <- (y - pred$mean)^2
## ----eval=FALSE-----------------------------------------------------------------------------------
# pred <- predict(fit, newdata, formula = ~ list(
# cond_scores = (y - exp(eta))^2,
# lambda = exp(eta)
# ))
# scores <- pred$cond_scores$mean - pred$lambda$sd^2
## ----eval=FALSE-----------------------------------------------------------------------------------
# poisson_crps <- function(y, rate) {
# # compute the CRPS score for a single y, for the given rate paramter.
# }
# max_K <- 100 # some large value, so that 1-F(K) is small
# pred <- predict(fit, newdata,
# formula = ~ {
# lambda <- exp(eta)
# list(
# crps = vapply(
# seq_along(y),
# function(i) poisson_crps(y[i], lambda[i]),
# 0.0
# ),
# F = do.call(
# cbind,
# lapply(
# seq_along(y),
# function(i) {
# data.frame(
# i = i,
# F = ppois(seq(0, max_K), rate = lambda[i])
# )
# }
# )
# )
# )
# },
# n.samples = 2000
# )
# crps_score <-
# pred$crsp$mean -
# (pred$F %>%
# group_by(i) %>%
# summarise(F_var = sum(sd^2), groups = "drop") %>%
# pull(F_var))
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.