From 39f55f27a002de5770868cfb2aeb951e1862e413 Mon Sep 17 00:00:00 2001 From: gowerc Date: Fri, 14 Jun 2024 15:34:43 +0100 Subject: [PATCH 1/4] inititial commit --- R/SimLongitudinalGSF.R | 12 ++++++------ R/SimLongitudinalSteinFojo.R | 12 ++++++------ tests/testthat/test-Grid.R | 6 +++--- tests/testthat/test-GridPrediction.R | 12 ++++++------ tests/testthat/test-LongitudinalGSF.R | 6 +++--- tests/testthat/test-LongitudinalSteinFojo.R | 12 ++++++------ tests/testthat/test-SimJointData.R | 6 +++--- tests/testthat/test-SimLongitudinalGSF.R | 6 +++--- tests/testthat/test-SimLongitudinalSteinFojo.R | 6 +++--- vignettes/extending-jmpost.Rmd | 12 ++++++------ 10 files changed, 45 insertions(+), 45 deletions(-) diff --git a/R/SimLongitudinalGSF.R b/R/SimLongitudinalGSF.R index 9c2bb2161..1e717c7a7 100644 --- a/R/SimLongitudinalGSF.R +++ b/R/SimLongitudinalGSF.R @@ -62,9 +62,9 @@ NULL SimLongitudinalGSF <- function( times = c(-100, -50, 0, 50, 100, 150, 250, 350, 450, 550) / 365, sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = 60, + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(60), a_phi = c(4, 6), b_phi = c(4, 6), omega_b = 0.2, @@ -159,9 +159,9 @@ sampleSubjects.SimLongitudinalGSF <- function(object, subjects_df) { dplyr::distinct(.data$subject, .data$arm, .data$study) |> dplyr::mutate(study_idx = as.numeric(.data$study)) |> dplyr::mutate(arm_idx = as.numeric(.data$arm)) |> - dplyr::mutate(psi_b = stats::rlnorm(dplyr::n(), log(object@mu_b[.data$study_idx]), object@omega_b)) |> - dplyr::mutate(psi_s = stats::rlnorm(dplyr::n(), log(object@mu_s[.data$arm_idx]), object@omega_s)) |> - dplyr::mutate(psi_g = stats::rlnorm(dplyr::n(), log(object@mu_g[.data$arm_idx]), object@omega_g)) |> + dplyr::mutate(psi_b = stats::rlnorm(dplyr::n(), object@mu_b[.data$study_idx], object@omega_b)) |> + dplyr::mutate(psi_s = stats::rlnorm(dplyr::n(), object@mu_s[.data$arm_idx], object@omega_s)) |> + dplyr::mutate(psi_g = stats::rlnorm(dplyr::n(), object@mu_g[.data$arm_idx], object@omega_g)) |> dplyr::mutate(psi_phi = stats::rbeta(dplyr::n(), object@a_phi[.data$arm_idx], object@b_phi[.data$arm_idx])) res[, c("subject", "arm", "study", "psi_b", "psi_s", "psi_g", "psi_phi")] diff --git a/R/SimLongitudinalSteinFojo.R b/R/SimLongitudinalSteinFojo.R index 6629ab450..64f580951 100644 --- a/R/SimLongitudinalSteinFojo.R +++ b/R/SimLongitudinalSteinFojo.R @@ -56,9 +56,9 @@ NULL SimLongitudinalSteinFojo <- function( times = c(-100, -50, 0, 50, 100, 150, 250, 350, 450, 550) / 365, sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = 60, + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(60), omega_b = 0.2, omega_s = 0.2, omega_g = 0.2, @@ -145,9 +145,9 @@ sampleSubjects.SimLongitudinalSteinFojo <- function(object, subjects_df) { dplyr::distinct(.data$subject, .data$arm, .data$study) |> dplyr::mutate(study_idx = as.numeric(.data$study)) |> dplyr::mutate(arm_idx = as.numeric(.data$arm)) |> - dplyr::mutate(psi_b = stats::rlnorm(dplyr::n(), log(object@mu_b[.data$study_idx]), object@omega_b)) |> - dplyr::mutate(psi_s = stats::rlnorm(dplyr::n(), log(object@mu_s[.data$arm_idx]), object@omega_s)) |> - dplyr::mutate(psi_g = stats::rlnorm(dplyr::n(), log(object@mu_g[.data$arm_idx]), object@omega_g)) + dplyr::mutate(psi_b = stats::rlnorm(dplyr::n(), object@mu_b[.data$study_idx], object@omega_b)) |> + dplyr::mutate(psi_s = stats::rlnorm(dplyr::n(), object@mu_s[.data$arm_idx], object@omega_s)) |> + dplyr::mutate(psi_g = stats::rlnorm(dplyr::n(), object@mu_g[.data$arm_idx], object@omega_g)) res[, c("subject", "arm", "study", "psi_b", "psi_s", "psi_g")] } diff --git a/tests/testthat/test-Grid.R b/tests/testthat/test-Grid.R index ffd0b7f7b..aa7eeec3c 100644 --- a/tests/testthat/test-Grid.R +++ b/tests/testthat/test-Grid.R @@ -26,9 +26,9 @@ set_fixtures_gsf <- function() { longitudinal = SimLongitudinalGSF( times = seq(0, 4, by = 1 / 365), sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = c(60, 50), + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(c(60, 50)), a_phi = c(15, 15), b_phi = c(15, 15), omega_b = 0.2, diff --git a/tests/testthat/test-GridPrediction.R b/tests/testthat/test-GridPrediction.R index 7dadbd1a0..0a839e098 100644 --- a/tests/testthat/test-GridPrediction.R +++ b/tests/testthat/test-GridPrediction.R @@ -21,9 +21,9 @@ set_fixtures_gsf_link <- function() { longitudinal = SimLongitudinalGSF( times = seq(0, 4, by = 1 / 365), sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = c(60, 50), + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(c(60, 50)), a_phi = c(15, 15), b_phi = c(15, 15), omega_b = 0.2, @@ -130,9 +130,9 @@ set_fixtures_weibull_only <- function() { longitudinal = SimLongitudinalGSF( times = seq(0, 4, by = 1 / 365), sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = c(60, 50), + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(c(60, 50)), a_phi = c(15, 15), b_phi = c(15, 15), omega_b = 0.2, diff --git a/tests/testthat/test-LongitudinalGSF.R b/tests/testthat/test-LongitudinalGSF.R index da2eea653..571f8a481 100644 --- a/tests/testthat/test-LongitudinalGSF.R +++ b/tests/testthat/test-LongitudinalGSF.R @@ -85,9 +85,9 @@ test_that("Can recover known distributional parameters from a full GSF joint mod longitudinal = SimLongitudinalGSF( times = c(-100, -50, 0, 1, 10, 50, 100, 150, 250, 300, 400, 500, 600) / 365, sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = 60, + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(60), a_phi = c(20, 15), b_phi = c(15, 20), omega_b = 0.2, diff --git a/tests/testthat/test-LongitudinalSteinFojo.R b/tests/testthat/test-LongitudinalSteinFojo.R index 02e98cb4a..279394186 100644 --- a/tests/testthat/test-LongitudinalSteinFojo.R +++ b/tests/testthat/test-LongitudinalSteinFojo.R @@ -104,9 +104,9 @@ test_that("Can recover known distributional parameters from a SF joint model", { longitudinal = SimLongitudinalSteinFojo( times = c(-100, -50, -10, 1, 100, 150, 200, 300, 400, 500, 600, 700, 800, 900) * (1 / 365), sigma = 0.005, - mu_s = c(0.2, 0.25), - mu_g = c(0.15, 0.2), - mu_b = 60, + mu_s = log(c(0.2, 0.25)), + mu_g = log(c(0.15, 0.2)), + mu_b = log(60), omega_b = 0.1, omega_s = 0.1, omega_g = 0.1, @@ -242,9 +242,9 @@ test_that("Can recover known distributional parameters from a SF joint model wit 1100, 1300, 1500, 1800 ) / 365, sigma = 0.005, - mu_s = c(0.15, 0.3), - mu_g = c(0.4, 0.25), - mu_b = 60, + mu_s = log(c(0.15, 0.3)), + mu_g = log(c(0.4, 0.25)), + mu_b = log(60), omega_b = 0.1, omega_s = 0.1, omega_g = 0.2, diff --git a/tests/testthat/test-SimJointData.R b/tests/testthat/test-SimJointData.R index fb1b86801..aba511282 100644 --- a/tests/testthat/test-SimJointData.R +++ b/tests/testthat/test-SimJointData.R @@ -18,9 +18,9 @@ test_that("SimJointData works as expected", { ), longitudinal = SimLongitudinalGSF( sigma = 0.003, - mu_s = c(0.2, 0.25), - mu_g = c(0.15, 0.2), - mu_b = 60, + mu_s = log(c(0.2, 0.25)), + mu_g = log(c(0.15, 0.2)), + mu_b = log(60), omega_b = 0.1, omega_s = 0.1, omega_g = 0.1, diff --git a/tests/testthat/test-SimLongitudinalGSF.R b/tests/testthat/test-SimLongitudinalGSF.R index 92bd03f6b..4a17ab6eb 100644 --- a/tests/testthat/test-SimLongitudinalGSF.R +++ b/tests/testthat/test-SimLongitudinalGSF.R @@ -3,9 +3,9 @@ test_that("SimLongitudinalGSF works as expected", { sim <- SimLongitudinalGSF( times = c(-100, 0, 50), sigma = 0.00000001, - mu_b = c(60, 90), - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), + mu_b = log(c(60, 90)), + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), omega_b = 0.000000001, omega_s = 0.000000001, omega_g = 0.000000001, diff --git a/tests/testthat/test-SimLongitudinalSteinFojo.R b/tests/testthat/test-SimLongitudinalSteinFojo.R index f7e6039dd..4392f4e22 100644 --- a/tests/testthat/test-SimLongitudinalSteinFojo.R +++ b/tests/testthat/test-SimLongitudinalSteinFojo.R @@ -3,9 +3,9 @@ test_that("SimLongitudinalSteinFojo works as expected", { sim <- SimLongitudinalSteinFojo( times = c(-100, 0, 50), sigma = 0.00000001, - mu_b = c(60, 90), - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), + mu_b = log(c(60, 90)), + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), omega_b = 0.000000001, omega_s = 0.000000001, omega_g = 0.000000001, diff --git a/vignettes/extending-jmpost.Rmd b/vignettes/extending-jmpost.Rmd index c56bf56ca..7fb27359b 100644 --- a/vignettes/extending-jmpost.Rmd +++ b/vignettes/extending-jmpost.Rmd @@ -540,9 +540,9 @@ SimLongitudinalGSF <- function( sigma = 0.01, mu_s = c(0.6, 0.4), mu_g = c(0.25, 0.35), - mu_b = 60, - a_phi = c(4, 6), - b_phi = c(4, 6), + mu_b = log(60), + a_phi = log(c(4, 6)), + b_phi = log(c(4, 6)), omega_b = 0.2, omega_s = 0.2, omega_g = 0.2, @@ -571,9 +571,9 @@ sampleSubjects.SimLongitudinalGSF <- function(object, subjects_df) { res <- subjects_df |> dplyr::mutate(study_idx = as.numeric(.data$study)) |> dplyr::mutate(arm_idx = as.numeric(.data$arm)) |> - dplyr::mutate(psi_b = stats::rlnorm(dplyr::n(), log(object@mu_b[.data$study_idx]), object@omega_b)) |> - dplyr::mutate(psi_s = stats::rlnorm(dplyr::n(), log(object@mu_s[.data$arm_idx]), object@omega_s)) |> - dplyr::mutate(psi_g = stats::rlnorm(dplyr::n(), log(object@mu_g[.data$arm_idx]), object@omega_g)) |> + dplyr::mutate(psi_b = stats::rlnorm(dplyr::n(), object@mu_b[.data$study_idx], object@omega_b)) |> + dplyr::mutate(psi_s = stats::rlnorm(dplyr::n(), object@mu_s[.data$arm_idx], object@omega_s)) |> + dplyr::mutate(psi_g = stats::rlnorm(dplyr::n(), object@mu_g[.data$arm_idx], object@omega_g)) |> dplyr::mutate(psi_phi = stats::rbeta(dplyr::n(), object@a_phi[.data$arm_idx], object@b_phi[.data$arm_idx])) res[, c("subject", "arm", "study", "psi_b", "psi_s", "psi_g", "psi_phi")] } From 2da09a1b11abb9080df935711c37de73d03b0650 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 14 Jun 2024 14:40:05 +0000 Subject: [PATCH 2/4] [skip roxygen] [skip vbump] Roxygen Man Pages Auto Update --- man/SimLongitudinalGSF-class.Rd | 6 +++--- man/SimLongitudinalSteinFojo-class.Rd | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/man/SimLongitudinalGSF-class.Rd b/man/SimLongitudinalGSF-class.Rd index 18a57d72d..6f3e3fbc5 100644 --- a/man/SimLongitudinalGSF-class.Rd +++ b/man/SimLongitudinalGSF-class.Rd @@ -10,9 +10,9 @@ SimLongitudinalGSF( times = c(-100, -50, 0, 50, 100, 150, 250, 350, 450, 550)/365, sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = 60, + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(60), a_phi = c(4, 6), b_phi = c(4, 6), omega_b = 0.2, diff --git a/man/SimLongitudinalSteinFojo-class.Rd b/man/SimLongitudinalSteinFojo-class.Rd index 8e6cf785b..a3bc9df72 100644 --- a/man/SimLongitudinalSteinFojo-class.Rd +++ b/man/SimLongitudinalSteinFojo-class.Rd @@ -10,9 +10,9 @@ SimLongitudinalSteinFojo( times = c(-100, -50, 0, 50, 100, 150, 250, 350, 450, 550)/365, sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), - mu_b = 60, + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), + mu_b = log(60), omega_b = 0.2, omega_s = 0.2, omega_g = 0.2, From fdf9ffef66a50514f394ab3cef82fb4d01ee7edc Mon Sep 17 00:00:00 2001 From: gowerc Date: Fri, 14 Jun 2024 16:46:47 +0100 Subject: [PATCH 3/4] white space edit --- tests/testthat/test-SimLongitudinalGSF.R | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/testthat/test-SimLongitudinalGSF.R b/tests/testthat/test-SimLongitudinalGSF.R index 4a17ab6eb..30c2d8d8e 100644 --- a/tests/testthat/test-SimLongitudinalGSF.R +++ b/tests/testthat/test-SimLongitudinalGSF.R @@ -36,7 +36,6 @@ test_that("SimLongitudinalGSF works as expected", { c("subject", "arm", "study", "psi_b", "psi_s", "psi_g", "psi_phi") ) - tdat <- purrr::map( sim@times, \(time) { From 1364261462db45ea7231f192ae194d2883e8bd7e Mon Sep 17 00:00:00 2001 From: gowerc Date: Mon, 17 Jun 2024 11:59:05 +0100 Subject: [PATCH 4/4] Fix wrong log value --- vignettes/extending-jmpost.Rmd | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/vignettes/extending-jmpost.Rmd b/vignettes/extending-jmpost.Rmd index 7fb27359b..ce836002c 100644 --- a/vignettes/extending-jmpost.Rmd +++ b/vignettes/extending-jmpost.Rmd @@ -538,11 +538,11 @@ the `SimLongitudinalGSF` class is implemented: SimLongitudinalGSF <- function( times = c(-100, -50, 0, 50, 100, 150, 250, 350, 450, 550) / 365, sigma = 0.01, - mu_s = c(0.6, 0.4), - mu_g = c(0.25, 0.35), + mu_s = log(c(0.6, 0.4)), + mu_g = log(c(0.25, 0.35)), mu_b = log(60), - a_phi = log(c(4, 6)), - b_phi = log(c(4, 6)), + a_phi = c(4, 6), + b_phi = c(4, 6), omega_b = 0.2, omega_s = 0.2, omega_g = 0.2,