#' Trapezoidal approximation to integrated square error (ISE) for the survival function.
#'
#' @param x Distinct, observed event times
#' @param surv_est Estimated survival function at each value in \code{x}
#' @param surv_true True survival function at each value in \code{x}
#'
#' @return A scalar function value
#'
#' @export
#'
ise <- function(x, surv_est, surv_true) {
# Reorder all arguments ascendingly by x
surv_est <- surv_est[order(x)]
surv_true <- surv_true[order(x)]
x <- x[order(x)]
# Calculate (\hat{f}(x) - f(x))^2 for all x
sub2 <- (surv_est - surv_true) ^ 2
# Calculate differences for all x
diff_x <- x[- 1] - x[- length(x)]
sum_sub2 <- sub2[- 1] + sub2[- length(sub2)]
# Multiply (diff_x)(diff_sub2)
mult_diff <- sum_sub2 * diff_x
# Return ISE
return(1 / 2 * sum(mult_diff))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.