Skip to content

Commit 6aed1d3

Browse files
committed
debug new family argument functionality
1 parent e6b8e89 commit 6aed1d3

File tree

7 files changed

+761
-16
lines changed

7 files changed

+761
-16
lines changed

R/ALD_stats.R

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
#' @export
1010
#'
1111
ALD_stats <- function(strategy, ald, treatments = list("B", "C")) {
12-
list(mean = marginal_treatment_effect(ald, treatments, link = strategy$family),
13-
var = marginal_variance(ald, treatments, link = strategy$family))
12+
list(mean = marginal_treatment_effect(ald, treatments, family = strategy$family),
13+
var = marginal_variance(ald, treatments, family = strategy$family))
1414
}
1515

1616

@@ -25,7 +25,7 @@ ALD_stats <- function(strategy, ald, treatments = list("B", "C")) {
2525
#' @export
2626
#'
2727
marginal_variance <- function(ald, treatments = list("B", "C"), family) {
28-
trial_vars <- purrr::map_dbl(treatments, ~trial_variance(ald, .x, family$link))
28+
trial_vars <- purrr::map_dbl(treatments, ~trial_variance(ald, .x, family))
2929
sum(trial_vars)
3030
}
3131

@@ -66,9 +66,7 @@ trial_variance <- function(ald, tid, family) {
6666
y <- ald[[paste0("y.", tid, ".sum")]]
6767
N <- ald[[paste0("N.", tid)]]
6868

69-
##TODO: replace?
70-
#(1 / (family$mu.eta(y/N)^2)) * family$variance(y/N) # delta method
71-
link_transform_var(y, N, family$link)
69+
link_transform_var(y, N, family)
7270
}
7371

7472

@@ -91,32 +89,41 @@ trial_treatment_effect <- function(ald, tid, family) {
9189
# estimated probability
9290
p_hat <- ald[[paste0("y.", tid, ".sum")]] / ald[[paste0("N.", tid)]]
9391

94-
##TODO: replace?
95-
#family$linkfun(p_hat)
96-
link_transform(p_hat, family$link)
92+
##TODO: need to test this replaced
93+
# link_transform(p_hat, family)
94+
family$linkfun(p_hat)
9795
}
9896

9997

10098
#' mean
10199
#'
102-
link_transform <- function(p, link) {
100+
link_transform <- function(p, family) {
101+
link <- family$link
102+
103103
if (link == "logit") {
104104
# log-OR
105105
return(qlogis(p)) # log(p / (1 - p))
106106
} else if (link == "log") {
107107
# log-Relative Risk (log-RR)
108108
return(log(p))
109+
} else {
110+
stop("Link function not implemented")
109111
}
110112
}
111113

112114
#' variance
113115
#'
114-
link_transform_var <- function(y, N, link) {
116+
link_transform_var <- function(y, N, family) {
117+
link <- family$link
118+
115119
if (link == "logit") {
116120
# log-OR
117121
return(1/y + 1/(N - y))
118122
} else if (link == "log") {
119123
# log-RR
120124
return(1/y)
125+
} else {
126+
##TODO: replace all? and move to trial_variance()
127+
(1 / (family$mu.eta(y/N)^2)) * family$variance(y/N) # delta method
121128
}
122129
}

R/IPD_stats.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ IPD_stats.gcomp_stan <- function(strategy,
121121
mean_A <- rowMeans(ppv$y.star.A)
122122
mean_C <- rowMeans(ppv$y.star.C)
123123

124-
hat.delta.AC <- calculate_ate(mean_A, mean_B, family = strategy$family)
124+
hat.delta.AC <- calculate_ate(mean_A, mean_C, family = strategy$family)
125125

126126
list(mean = mean(hat.delta.AC),
127127
var = var(hat.delta.AC))

R/calculate_ate.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#' @returns ATE
88
#' @export
99
#'
10-
calculate_ate <- function(mean_A, mean_B, family) {
10+
calculate_ate <- function(mean_A, mean_C, family) {
1111

1212
link <- family$link
1313

R/gcomp_ml.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ gcomp_ml_ate <- function(formula,
6767
hat.mu.A <- mean(hat.mu.A.i) # (marginal) mean probability prediction under A
6868
hat.mu.C <- mean(hat.mu.C.i) # (marginal) mean probability prediction under C
6969

70-
calculate_ate(hat.mu.A, hat.mu.C, family = strategy$family)
70+
calculate_ate(hat.mu.A, hat.mu.C, family = family)
7171
}
7272

7373

vignettes/Binary_data_example.Rmd

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Binary data example"
33
output: rmarkdown::html_vignette
44
vignette: >
5-
%\VignetteIndexEntry{Basic Example}
5+
%\VignetteIndexEntry{Binary data example}
66
%\VignetteEncoding{UTF-8}
77
%\VignetteEngine{knitr::rmarkdown}
88
editor_options:
@@ -353,7 +353,7 @@ outstandR_mim
353353

354354
### Model comparison
355355

356-
Combine all outputs
356+
Combine all outputs for log-odds ratio table of all contrasts and methods.
357357

358358
```{r}
359359
knitr::kable(

0 commit comments

Comments
 (0)