Skip to content

Commit bd94bd1

Browse files
committed
Move compute_intervals() to bottom of file with other internal helpers
1 parent 1d6bd1f commit bd94bd1

File tree

1 file changed

+58
-58
lines changed

1 file changed

+58
-58
lines changed

R/mcmc-intervals.R

Lines changed: 58 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -608,64 +608,6 @@ mcmc_intervals_data <- function(x,
608608
compute_intervals(data_long, prob, prob_outer, point_est, rhat)
609609
}
610610

611-
# Internal helper shared by mcmc_intervals_data() and mcmc_areas_data()
612-
compute_intervals <- function(data_long, prob, prob_outer,
613-
point_est = c("median", "mean", "none"),
614-
rhat = numeric()) {
615-
616-
probs <- c(0.5 - prob_outer / 2,
617-
0.5 - prob / 2,
618-
0.5 + prob / 2,
619-
0.5 + prob_outer / 2)
620-
621-
point_est <- match.arg(point_est)
622-
m_func <- if (point_est == "mean") mean else median
623-
624-
data <- data_long %>%
625-
group_by(.data$parameter) %>%
626-
summarise(
627-
outer_width = prob_outer,
628-
inner_width = prob,
629-
point_est = point_est,
630-
ll = unname(quantile(.data$value, probs[1])),
631-
l = unname(quantile(.data$value, probs[2])),
632-
m = m_func(.data$value),
633-
h = unname(quantile(.data$value, probs[3])),
634-
hh = unname(quantile(.data$value, probs[4]))
635-
)
636-
637-
if (point_est == "none") {
638-
data$m <- NULL
639-
}
640-
641-
color_by_rhat <- isTRUE(length(rhat) > 0)
642-
643-
if (color_by_rhat) {
644-
rhat <- drop_NAs_and_warn(new_rhat(rhat))
645-
646-
if (length(rhat) != nrow(data)) {
647-
abort(paste(
648-
"'rhat' has length", length(rhat),
649-
"but 'x' has", nrow(data), "parameters."
650-
))
651-
}
652-
653-
rhat <- set_names(rhat, data$parameter)
654-
655-
rhat_tbl <- rhat %>%
656-
mcmc_rhat_data() %>%
657-
select(all_of("parameter"),
658-
rhat_value = "value",
659-
rhat_rating = "rating",
660-
rhat_description = "description") %>%
661-
mutate(parameter = factor(.data$parameter, levels(data$parameter)))
662-
663-
data <- dplyr::inner_join(data, rhat_tbl, by = "parameter")
664-
}
665-
666-
data
667-
}
668-
669611

670612
# Don't import `filter`: otherwise, you get a warning when using
671613
# `devtools::load_all(".")` because stats also has a `filter` function
@@ -908,3 +850,61 @@ check_interval_widths <- function(prob, prob_outer) {
908850
}
909851
sort(c(prob, prob_outer))
910852
}
853+
854+
# Internal helper shared by mcmc_intervals_data() and mcmc_areas_data()
855+
compute_intervals <- function(data_long, prob, prob_outer,
856+
point_est = c("median", "mean", "none"),
857+
rhat = numeric()) {
858+
859+
probs <- c(0.5 - prob_outer / 2,
860+
0.5 - prob / 2,
861+
0.5 + prob / 2,
862+
0.5 + prob_outer / 2)
863+
864+
point_est <- match.arg(point_est)
865+
m_func <- if (point_est == "mean") mean else median
866+
867+
data <- data_long %>%
868+
group_by(.data$parameter) %>%
869+
summarise(
870+
outer_width = prob_outer,
871+
inner_width = prob,
872+
point_est = point_est,
873+
ll = unname(quantile(.data$value, probs[1])),
874+
l = unname(quantile(.data$value, probs[2])),
875+
m = m_func(.data$value),
876+
h = unname(quantile(.data$value, probs[3])),
877+
hh = unname(quantile(.data$value, probs[4]))
878+
)
879+
880+
if (point_est == "none") {
881+
data$m <- NULL
882+
}
883+
884+
color_by_rhat <- isTRUE(length(rhat) > 0)
885+
886+
if (color_by_rhat) {
887+
rhat <- drop_NAs_and_warn(new_rhat(rhat))
888+
889+
if (length(rhat) != nrow(data)) {
890+
abort(paste(
891+
"'rhat' has length", length(rhat),
892+
"but 'x' has", nrow(data), "parameters."
893+
))
894+
}
895+
896+
rhat <- set_names(rhat, data$parameter)
897+
898+
rhat_tbl <- rhat %>%
899+
mcmc_rhat_data() %>%
900+
select(all_of("parameter"),
901+
rhat_value = "value",
902+
rhat_rating = "rating",
903+
rhat_description = "description") %>%
904+
mutate(parameter = factor(.data$parameter, levels(data$parameter)))
905+
906+
data <- dplyr::inner_join(data, rhat_tbl, by = "parameter")
907+
}
908+
909+
data
910+
}

0 commit comments

Comments
 (0)