| Type: | Package |
| Title: | Neuroscience Extension Package for ADaM in 'R' Asset Library |
| Version: | 0.2.1 |
| Description: | Programming neuroscience specific Clinical Data Standards Interchange Consortium (CDISC) compliant Analysis Data Model (ADaM) datasets in 'R'. ADaM datasets are a mandatory part of any New Drug or Biologics License Application submitted to the United States Food and Drug Administration (FDA). Analysis derivations are implemented in accordance with the "Analysis Data Model Implementation Guide" (CDISC Analysis Data Model Team, 2021, https://www.cdisc.org/standards/foundational/adam). This package extends the 'admiral' package. |
| License: | Apache License (≥ 2) |
| BugReports: | https://github.com/pharmaverse/admiralneuro/issues |
| URL: | https://pharmaverse.github.io/admiralneuro/, https://github.com/pharmaverse/admiralneuro |
| Depends: | R (≥ 4.1) |
| Imports: | admiral (≥ 1.4.1), admiraldev (≥ 1.4.0), cli (≥ 3.6.2), dplyr (≥ 1.1.1), hms (≥ 0.5.3), lifecycle (≥ 0.1.0), lubridate (≥ 1.7.4), magrittr (≥ 1.5), purrr (≥ 0.3.3), rlang (≥ 0.4.4), stringr (≥ 1.4.0), tibble (≥ 3.2.1), tidyr (≥ 1.0.2), tidyselect (≥ 1.1.0) |
| Suggests: | diffdf, DT, htmltools, knitr, metatools, methods, pharmaversesdtm (≥ 1.0.0), reactable, readxl, rmarkdown, testthat (≥ 3.0.0) |
| VignetteBuilder: | knitr |
| Config/testthat/edition: | 3 |
| Encoding: | UTF-8 |
| Language: | en-US |
| LazyData: | true |
| RoxygenNote: | 7.3.3 |
| NeedsCompilation: | no |
| Packaged: | 2026-02-04 19:49:09 UTC; c085541 |
| Author: | Jian Wang |
| Maintainer: | Jian Wang <wang_jian_wj@lilly.com> |
| Repository: | CRAN |
| Date/Publication: | 2026-02-04 23:20:02 UTC |
admiralneuro: Neuroscience Extension Package for ADaM in 'R' Asset Library
Description
Programming neuroscience specific Clinical Data Standards Interchange Consortium (CDISC) compliant Analysis Data Model (ADaM) datasets in 'R'. ADaM datasets are a mandatory part of any New Drug or Biologics License Application submitted to the United States Food and Drug Administration (FDA). Analysis derivations are implemented in accordance with the "Analysis Data Model Implementation Guide" (CDISC Analysis Data Model Team, 2021, https://www.cdisc.org/standards/foundational/adam). This package extends the 'admiral' package.
Author(s)
Maintainer: Jian Wang wang_jian_wj@lilly.com (ORCID)
Authors:
Miles Almond (ORCID)
Xiao Chen (ORCID)
Fanny Gautier (ORCID)
Gayatri G.
Meilin Jiang (ORCID)
Leena Khatri (ORCID)
Edoardo Mancini (ORCID)
Eric Nantz
Lina Patil
Chris Pelentrides
Other contributors:
Eli Lilly and Company [copyright holder, funder]
Cytel Inc. [copyright holder, funder]
F. Hoffmann-La Roche AG [copyright holder, funder]
See Also
Useful links:
Report bugs at https://github.com/pharmaverse/admiralneuro/issues
Amyloid PET Scan Analysis Dataset - Neuro
Description
An updated ADaM ADAPET dataset using NV, AG, SUPPNV, ADSL
Usage
admiralneuro_adapet
Format
An object of class tbl_df (inherits from tbl, data.frame) with 83 rows and 50 columns.
See Also
Other datasets:
admiralneuro_adtpet,
adsl_neuro
Tau PET Scan Analysis Dataset - Neuro
Description
An updated ADaM ADTPET dataset using NV, AG, SUPPNV, ADSL
Usage
admiralneuro_adtpet
Format
An object of class tbl_df (inherits from tbl, data.frame) with 34 rows and 47 columns.
See Also
Other datasets:
admiralneuro_adapet,
adsl_neuro
Subject Level Analysis Dataset-updated
Description
An updated ADaM ADSL dataset with Alzheimer's Disease patients
Usage
adsl_neuro
Format
An object of class tbl_df (inherits from tbl, data.frame) with 15 rows and 36 columns.
See Also
Other datasets:
admiralneuro_adapet,
admiralneuro_adtpet
Compute Centiloid Value
Description
Computes the Centiloid value based on an amyloid Positron Emission Tomography (PET) scan radioactive tracer, Standardized Uptake Value Ratio (SUVR) value, pipeline, and reference region. Also allows for custom formula parameters.
Usage
compute_centiloid(
tracer,
pipeline,
ref_region,
suvr,
custom_slope = NULL,
custom_intercept = NULL
)
Arguments
tracer |
Amyloid PET tracer A character string is expected.
If
|
pipeline |
SUVR pipeline A character string is expected.
If
|
ref_region |
Reference region A character string is expected.
If
|
suvr |
SUVR value A positive numeric value is expected.
|
custom_slope |
Optional slope parameter for custom Centiloid calculation formula A numeric value is expected when provided.
When
|
custom_intercept |
Optional intercept parameter for custom centiloid calculation formula A numeric value is expected when provided.
When
|
Details
The Centiloid scale is a standardized quantitative measure for amyloid PET imaging that allows comparison between different tracers and analysis methods. This function converts SUVR values to the Centiloid scale based on published conversion equations for specific tracer, pipeline, and reference region combinations.
Centiloid is calculated as:
Centiloid = slope \times SUVR + intercept
where slope and intercept are formula parameters. If custom_slope and custom_intercept
are not specified, this function uses pre-defined slope and intercept based on
the user's selections of tracer, pipeline, and reference region.
The combinations of tracer, pipeline and reference region in the table below are supported. The
columns "slope" and "intercept" then show the values of the slope and intercept that
compute_centiloid() will use to calculate the centiloid value in each case.
| tracer | pipeline | ref_region | slope | intercept |
| 18F-Florbetapir | AVID FBP SUVR PIPELINE¹ | Whole Cerebellum | 183.07 | -177.26 |
| 18F-Florbetaben | AVID FBB SUVR PIPELINE² | Whole Cerebellum | 156.06 | -148.13 |
| 18F-Florbetapir | BERKELEY FBP SUVR PIPELINE³ | Whole Cerebellum | 188.22 | -189.16 |
| 18F-Florbetaben | BERKELEY FBB SUVR PIPELINE³ | Whole Cerebellum | 157.15 | -151.87 |
The equations used for the conversions are based on the following references:
¹ Navitsky, et al. (2018). doi:10.1016/j.jalz.2018.06.1353 ² Sims, et al. (2024). doi:10.1001/jama.2023.13239 ³ Royse, et al. (2021). doi:10.1186/s13195-021-00836-1
Alternatively, the user can override the pre-selection by specifying both custom_slope
and custom_intercept instead. When custom_slope and custom_intercept are specified,
the function ignores tracer, pipeline and ref_region for calculation purposes. However,
this function always requires specification of tracer, pipeline, and ref_region
parameters, even when using custom slope and intercept values. This design choice ensures
that users remain cognizant of the imaging context and analysis methodology when computing
Centiloid values.
For additional Centiloid transformation formulas, see: Iaccarino, L. et al. (2025). doi:10.1016/j.nicl.2025.103765
If a matching combination of tracer, pipeline, and reference region is not specified and both
custom_slope and custom_intercept are not specified, the function aborts with an error.
Value
A numeric Centiloid value.
Examples
Using standard parameters
Computes Centiloid with predefined slope/intercept for supported tracer/pipeline/ref_region combinations:
compute_centiloid( tracer = "18F-Florbetapir", pipeline = "AVID FBP SUVR PIPELINE", ref_region = "Whole Cerebellum", suvr = 1.25 ) #> [1] 51.5775
Using custom parameters
Computes Centiloid by overriding slope/intercept using custom values:
compute_centiloid( tracer = "MyTracer", pipeline = "MyPipeline", ref_region = "MyRegion", suvr = 1.25, custom_slope = 193, custom_intercept = -187 ) #> [1] 54.25
See Also
Other com_bds_findings:
compute_upsit_percentile()
Compute UPSIT Percentile Based on Age, Sex, and Score
Description
This function computes the UPSIT (University of Pennsylvania Smell Identification Test) percentile for a given subject based on their age, sex, and UPSIT raw score. The percentile is determined by looking up the corresponding value in a normative reference table.
Usage
compute_upsit_percentile(sex, age, upsit_score)
Arguments
sex |
Sex of the subject. Must be either "M" or "F" A character string of either "M" or "F" is expected
|
age |
Age of the subject in years.
|
upsit_score |
The UPSIT ranging from 0 to 40. Higher scores indicate better olfactory function.
|
Details
The function uses an internal lookup table (upsit_lookup) that contains
normative percentile data stratified by sex, age range, and UPSIT score.
The lookup table is based on published normative data.
Age ranges in the lookup table include:
50-54 years
55-59 years
60-64 years
65-69 years
70-74 years
75-79 years
80+ years (no upper limit)
The function is designed to work efficiently in vectorized operations
within data processing pipelines (e.g., with dplyr::mutate())
Value
A numeric percentile value.
The UPSIT percentile value corresponding to the input
parameters. Returns NA_real_ if no matching entry is found in the
lookup table.
Examples
Look up for male percentile
A 52 years old male with upsit raw score of 25
compute_upsit_percentile(sex = "M", age = 52, upsit_score = 25) #> [1] 5
Look up for female percentile
A 81 years old female with upsit raw score of 30
compute_upsit_percentile(sex = "F", age = 81, upsit_score = 30) #> [1] 39
Returns NA
Minimal age is 50 and score of 0 and 40, return NA if no match found
compute_upsit_percentile(sex = "M", age = 45, upsit_score = 25) #> [1] NA
References
Brumm MC, et. al., Updated Percentiles for the University of Pennsylvania Smell Identification Test in Adults 50 Years of Age and Older. doi:10.1212/WNL.0000000000201463
See Also
Other com_bds_findings:
compute_centiloid()