Skip to content

Commit 77e4311

Browse files
committed
a bit more just extending outputs to include absolute probabilities (as well as contrasts) - mainly changing results_stats(). Not quite finished but should work.
* need to return probabilities from ALD_stats()
1 parent 6760d6f commit 77e4311

File tree

2 files changed

+42
-12
lines changed

2 files changed

+42
-12
lines changed

R/IPD_stats.R

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,10 @@ IPD_stat_factory <- function(ipd_fun) {
9494

9595
out <- ipd_fun(strategy, ipd, ald, ...)
9696

97+
# relative treatment effect
9798
hat.delta.AC <- calculate_ate(out$mean_A, out$mean_C,
9899
effect = scale)
99-
100+
100101
coef_est <- mean(hat.delta.AC)
101102

102103
if (var_method == "sandwich") {
@@ -106,8 +107,17 @@ IPD_stat_factory <- function(ipd_fun) {
106107
var_est <- var(hat.delta.AC)
107108
}
108109

109-
list(mean = coef_est,
110-
var = var_est)
110+
p_est <- sapply(out, mean)
111+
p_var <- sapply(out, var)
112+
113+
list(
114+
contrasts = list(
115+
mean = coef_est,
116+
var = var_est),
117+
absolute = list(
118+
mean = p_est,
119+
var = p_var)
120+
)
111121
}
112122
}
113123

R/result_stats.R

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,34 +8,54 @@
88
#' @keywords internal
99
#'
1010
result_stats <- function(AC_stats,
11-
BC_stats,
12-
CI = 0.95) {
11+
BC_stats,
12+
CI = 0.95) {
1313
upper <- 0.5 + CI/2
1414
ci_range <- c(1-upper, upper)
1515
z_vals <- qnorm(ci_range)
1616

17+
AC_contrasts <- AC_stats$contrasts
18+
AC_absolute <- AC_stats$absolute
19+
20+
# contrasts
21+
1722
contrasts <- list(
18-
AB = AC_stats$mean - BC_stats$mean,
19-
AC = AC_stats$mean,
23+
AB = AC_contrasts$mean - BC_stats$mean,
24+
AC = AC_contrasts$mean,
2025
BC = BC_stats$mean)
2126

2227
contrast_variances <- list(
23-
AB = AC_stats$var + BC_stats$var,
24-
AC = AC_stats$var,
28+
AB = AC_contrasts$var + BC_stats$var,
29+
AC = AC_contrasts$var,
2530
BC = BC_stats$var)
2631

2732
contrast_ci <- list(
2833
AB = contrasts$AB + z_vals*as.vector(sqrt(contrast_variances$AB)),
2934
AC = contrasts$AC + z_vals*as.vector(sqrt(contrast_variances$AC)),
3035
BC = contrasts$BC + z_vals*as.vector(sqrt(contrast_variances$BC)))
3136

37+
# absolute values
38+
39+
absolute <- list(
40+
A = AC_absolute$mean["mean_A"],
41+
# B = AB_absolute$mean["mean_B"],
42+
C = AC_absolute$mean["mean_C"]
43+
)
44+
45+
absolute_var <- list(
46+
A = AC_absolute$var["mean_A"],
47+
# B = AB_absolute$var["mean_B"],
48+
C = AC_absolute$var["mean_C"]
49+
)
50+
3251
list(
3352
contrasts = list(
3453
means = contrasts,
3554
variances = contrast_variances,
3655
CI = contrast_ci),
3756
absolute = list( ##TODO:
38-
means = contrasts,
39-
variances = contrast_variances,
40-
CI = contrast_ci))
57+
means = absolute,
58+
variances = absolute_var
59+
# CI = contrast_ci
60+
))
4161
}

0 commit comments

Comments
 (0)