## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----eval=FALSE--------------------------------------------------------------- # # Stable release # install.packages("SimuRg") # # # Development version: # remotes::install_github("ms-decisions/SimuRg") ## ----setup-------------------------------------------------------------------- library(SimuRg) ## ----model-------------------------------------------------------------------- library(tibble) library(dplyr) library(stringr) library(readr) model <- system.file("extdata", "models", "model_PK_1c.txt", package = "SimuRg") read_lines(model) ## ----data--------------------------------------------------------------------- data <- system.file("extdata", "datasets", "dspk-warf.csv", package = "SimuRg") data_content <- read.csv(data) head(data) headers <- list(list(name = "ID", use = "identifier", type = NULL), list(name = "TIME", use = "time", type = NULL), list(name = "DV", use = "observation", type = "continuous"), list(name = "DVID", use = "observationtype", type = NULL), list(name = "ADM", use = "administration", type = NULL), list(name = "AMT", use = "amount", type = NULL), list(name = "EVID", use = "eventidentifier", type = NULL), list(name = "MDV", use = "missingdependentvariable", type = NULL), list(name = "AGE", use = "covariate", type = "continuous"), list(name = "AGE_centered", use = "covariate", type = "continuous"), list(name = "SEX", use = "covariate", type = "categorical"), list(name = "WEIGHT", use = "covariate", type = "continuous"), list(name = "BMI", use = "covariate", type = "continuous"), list(name = "CLCR", use = "covariate", type = "continuous"), list(name = "CYP2C9_gentyp", use = "covariate", type = "categorical"), list(name = "VKORC1_gentyp", use = "covariate", type = "categorical"), list(name = "G1_1", use = "ignore", type = NULL), list(name = "G1_2", use = "ignore", type = NULL), list(name = "G1_3", use = "ignore", type = NULL), list(name = "G2_2", use = "ignore", type = NULL), list(name = "G2_3", use = "ignore", type = NULL), list(name = "G3_3", use = "ignore", type = NULL), list(name = "GG", use = "ignore", type = NULL), list(name = "AG", use = "ignore", type = NULL), list(name = "AA", use = "ignore", type = NULL)) ## ----theta-------------------------------------------------------------------- theta <- tribble(~NAME, ~TRANS, ~INIT, ~LB, ~UB, ~EST, "Cl", "logNormal", 0.2, NA, NA, TRUE, "V", "logNormal", 20, NA, NA, TRUE, "ka", "logNormal", 0.2, NA, NA, TRUE ) ## ----re----------------------------------------------------------------------- re <- list(init = tribble(~Cl, ~V, ~ka, 1, 0, 0, 0, 0, 0, 0, 0, 1) %>% as.matrix(), est = tribble(~Cl, ~V, ~ka, TRUE, NA, NA, NA, NA, NA, NA, NA, TRUE) %>% as.matrix()) occ <- list(init = tribble(~Cl, ~V, ~ka, 0, 0, 0, 0, 0, 0, 0, 0, 0) %>% as.matrix(), est = tribble(~Cl, ~V, ~ka, NA, NA, NA, NA, NA, NA, NA, NA, NA) %>% as.matrix()) ## ----ruv---------------------------------------------------------------------- ruv <- list(YNAME = "y1", DVID = 1, TRANS = "normal", PRED = "Cc", ERR = "combined1", INIT = c(1, 1), EST = c(TRUE, TRUE), BLQM = NULL) ## ----cov---------------------------------------------------------------------- covs <- list(list(PAR = "V", COVNAME = "AGE", FUNC = "linear", TRANS = "median", INIT = 1, EST = TRUE), list(PAR = "ka", COVNAME = "SEX", REF = 0, INIT = 1, EST = TRUE)) ## ----fit---------------------------------------------------------------------- output_path <- str_c(tempdir(), "/") task_opt <- paste("populationParameters()", "individualParameters()", "logLikelihood()", sep = "\n") result <- sg_fit(model, data, headers, theta, ruv, re, occ, covs, project_name = "my_project", fit = FALSE, # set fit = TRUE for fit path_to_save_output = output_path) ## ----read--------------------------------------------------------------------- test_folder <- system.file("extdata", "Monolix_objects", package = "SimuRg") if (substr(test_folder, nchar(test_folder), nchar(test_folder)) != "/") test_folder <- str_c(test_folder, "/") pro_name <- "proj-solo" message("Resolved folder: ", test_folder) message("Folder exists: ", dir.exists(test_folder)) result <- sg_converter(folder_path = test_folder, proj_name = pro_name) ## ----gof---------------------------------------------------------------------- sg_gof_obpr(result$GFO) sg_gof_tp(result$GFO) sg_gof_par_dist(result$GFO) sg_gof_res_dist(result$GFO) sg_gof_res(result$GFO) sg_gof_res(result$GFO, vs_time = F)