nlmixrdevelopment / nlmixr

nlmixr: an R package for population PKPD modeling
https://nlmixrdevelopment.github.io/nlmixr/
GNU General Public License v2.0
114 stars 45 forks source link

Trouble with Whole Body PBPK Model Estimation in nlmixr2 #650

Closed SravaniLanke closed 2 months ago

SravaniLanke commented 3 months ago

I'm encountering difficulties while attempting to estimate a whole-body PBPK model using nlmixr2. Previously, the model functioned properly, but now it fails to estimate the data accurately. Instead, it consistently produces final estimates very close to the initial estimate values. I would greatly appreciate any assistance in resolving this issue. Thank you.

mattfidler commented 3 months ago

Hi @SravaniLanke

Unfortunately without a reproducible example (and probably some sort of record of when it worked), it is unlikely I can help you.

One way to produce a reproducible issue is to use reprex:

https://reprex.tidyverse.org/

You could simulate similar data to see if that would help.

It is best practice to put the sessioninfo::session_info() to see what version of R and packages you are running.

For example:

sessioninfo::session_info()
#> ─ Session info ───────────────────────────────────────────────────────────────
#>  setting  value
#>  version  R version 4.3.3 (2024-02-29)
#>  os       Pop!_OS 22.04 LTS
#>  system   x86_64, linux-gnu
#>  ui       X11
#>  language (EN)
#>  collate  en_US.UTF-8
#>  ctype    en_US.UTF-8
#>  tz       America/Chicago
#>  date     2024-03-19
#>  pandoc   2.9.2.1 @ /usr/bin/ (via rmarkdown)
#> 
#> ─ Packages ───────────────────────────────────────────────────────────────────
#>  package     * version date (UTC) lib source
#>  cli           3.6.2   2023-12-11 [3] RSPM (R 4.3.0)
#>  digest        0.6.35  2024-03-11 [3] RSPM (R 4.3.0)
#>  evaluate      0.23    2023-11-01 [3] RSPM (R 4.3.0)
#>  fastmap       1.1.1   2023-02-24 [3] RSPM (R 4.2.0)
#>  fs            1.6.3   2023-07-20 [3] RSPM (R 4.2.0)
#>  glue          1.7.0   2024-01-09 [3] RSPM (R 4.3.0)
#>  htmltools     0.5.7   2023-11-03 [3] RSPM (R 4.3.0)
#>  knitr         1.45    2023-10-30 [3] RSPM (R 4.3.0)
#>  lifecycle     1.0.4   2023-11-07 [3] RSPM (R 4.3.0)
#>  magrittr      2.0.3   2022-03-30 [3] RSPM (R 4.2.0)
#>  purrr         1.0.2   2023-08-10 [3] RSPM (R 4.2.0)
#>  R.cache       0.16.0  2022-07-21 [3] RSPM (R 4.2.0)
#>  R.methodsS3   1.8.2   2022-06-13 [3] RSPM (R 4.2.0)
#>  R.oo          1.26.0  2024-01-24 [3] RSPM (R 4.3.0)
#>  R.utils       2.12.3  2023-11-18 [3] RSPM (R 4.3.0)
#>  reprex        2.1.0   2024-01-11 [3] RSPM (R 4.3.0)
#>  rlang         1.1.3   2024-01-10 [3] RSPM (R 4.3.0)
#>  rmarkdown     2.26    2024-03-05 [3] RSPM (R 4.3.0)
#>  sessioninfo   1.2.2   2021-12-06 [3] RSPM (R 4.2.0)
#>  styler        1.10.2  2023-08-29 [3] RSPM (R 4.2.0)
#>  vctrs         0.6.5   2023-12-01 [3] RSPM (R 4.3.0)
#>  withr         3.0.0   2024-01-16 [3] RSPM (R 4.3.2)
#>  xfun          0.42    2024-02-08 [3] RSPM (R 4.3.0)
#>  yaml          2.3.8   2023-12-11 [3] RSPM (R 4.3.0)
#> 
#>  [1] /home/matt/R/x86_64-pc-linux-gnu-library/4.3
#>  [2] /usr/local/lib/R/site-library
#>  [3] /usr/lib/R/site-library
#>  [4] /usr/lib/R/library
#> 
#> ──────────────────────────────────────────────────────────────────────────────

Created on 2024-03-19 with reprex v2.1.0

mattfidler commented 3 months ago

You can also use a date to track down what packages were available when you had the successful fit. But as a note, the successful fit from the nlmixr2 package would be when you installed nlmixr2 and related packages, not when you ran your model (hence it is good practice to get the session info).

You could also use base's sessionInfo() but I prefer to use sessioninfo::session_info() because it also captures the github sha for packages installed from github.

mattfidler commented 2 months ago

You could also use something like https://cran.r-project.org/web/packages/groundhog/index.html

For now I will close this.