-
derive_vars_last_dose()
no longer fails when a variable renamed innew_vars
is supplied to thedose_date
parameter (#1206) -
derive_vars_duration()
updated to not display units when there is missing duration (#1207) -
derive_param_first_event()
was updated (#1214) such thatAVAL
is derived instead ofAVALN
and- all variables from the source dataset are kept.
-
slice_derivation()
was updated such that it no longer fails if a slice is empty (#1309)
-
Updates to date/time imputation functions (#761):
-
convert_date_to_dtm()
andconvert_dtc_to_dtm()
now have time_imputation = "00:00:00" as default -
derive_vars_dt()
now has flag_imputation = "auto" as default
-
-
New functions for merging variables (#607):
derive_vars_merged()
- Merge Variables from a Dataset to the Input Datasetderive_vars_merged_dt()
- Merge a (Imputed) Date Variablederive_vars_merged_dtm()
- Merge a (Imputed) Datetime Variablederive_var_merged_cat()
- Merge a Categorization Variablederive_var_merged_exist_flag()
- Merge an Existence Flagderive_var_merged_character()
- Merge a Character Variable
-
create_query_data()
is provided to create the queries dataset required as input forderive_vars_query()
(#606) -
create_single_dose_dataset()
- Derives dataset of single dose from aggregate dose information (#660) -
New functions for deriving first or last dates from multiple source datasets (#753):
derive_var_extreme_dtm()
- Derive First or Last Datetime from Multiple Sourcesderive_var_extreme_dt()
- Derive First or Last Date from Multiple Sources
-
New function
derive_extreme_records()
for adding the first or last observation within each by group to the dataset (#1042) -
New function
derive_param_first_event()
: Add a new parameter for the first event occurring in a dataset. (#1063) -
New function
derive_param_exist_flag()
: Add a new parameter indicating that a certain event exists in a dataset. (#1064) -
New high order functions (#701):
restrict_derivation()
- Execute a derivation on a subset of the input datasetslice_derivation()
- The input dataset is split into slices (subsets) and for each slice a derivation is called separately. Some or all arguments of the derivation may vary depending on the slice.
-
filter_relative()
- Selects observations before or after the observation where a specified condition is fulfilled. For example, all observations up to first disease progression. (#1023)
-
New ADLB template script available
ad_adlb.R
, specific ADLB functions developed and BDS Finding vignette has examples enhanced with ADLB functions. (#1122) -
derive_var_shift()
- Derives a character shift variable containing concatenated shift in values based on user-defined pairing (#944) -
derive_var_analysis_ratio()
- Derives a ratio variable based on user-supplied variables from a BDS dataset, e.g. ADLB. (#943) -
derive_param_wbc_abs()
- Adds a parameter for lab differentials converted to absolute values. (#941)
- New ADPP template script available
ad_adpp.R
which creates Pharmacokinetics Parameters Analysis Dataset (#850)
-
Datasets internal to the package have been renamed with prefix
admiral_
, e.g.adsl
has been renamed toadmiral_adsl
. Corresponding SDTM datasets in{admiral.test}
have also been renamed, e.g.dm
toadmiral_dm
. These changes will impact examples, vignettes, unit tests and templates (#1108 and #1088) -
When
derive_vars_dtm_to_tm()
was called for variables created byderive_vars_dtm()
the function failed. This bug was fixed (#1097). -
impute_dtc()
- Fixed imputation bug. A user settingdate_imputation = MID
andpreserve = FALSE
would expect the date2019---07
to be imputed to2019-06-30
, but the function was returning2019-06-15
. Now returns it correctly. This bug fix also addresses the issue in the downstream functionsderive_vars_dt()
andderive_vars_dtm()
. (#1081) -
format_eoxxstt_default()
- Updated to have a more meaningful parameter name i.e. the parameter that was x is now status (#911)
-
derive_var_lstalvdt()
has been deprecated in favor ofderive_var_extreme_dt()
(#753). -
derive_vars_disposition_reason()
now is updated such that the default is populatingDCSREASP
only whenDSDECOD
is equal to'OTHER'
, which is consistent with ADaMIG_v1.3 (#886). -
derive_vars_suppqual()
has been removed from {admiral} as adding supplementary qualifiers is now done in another package called {metatools} in a function calledcombine_supp()
and is available on CRAN (#950) -
The
filter
parameter inderive_var_extreme_flag()
andderive_var_worst_flag()
has been deprecated in favor ofrestrict_derivation()
(#701). -
The following functions and parameters, which were deprecated in previous {admiral} versions, have been removed (#1056):
derive_agegr_ema()
derive_agegr_fda()
derive_disposition_dt()
derive_disposition_status()
derive_extreme_flag()
derive_worst_flag()
derive_obs_number()
derive_disposition_reason()
derive_var_basec()
derive_baseline()
derive_params_exposure()
derive_last_dose()
dataset
parameter inlstalvdt_source
anddthcaus_source
-
The following functions were deprecated in favor of
derive_vars_dy()
(#1076):derive_var_ady()
- Derive Analysis Study Dayderive_var_aendy()
- Derive Analysis End Relative Dayderive_var_astdy()
- Derive Analysis Start Relative Day
-
The following functions were deprecated in favor of
derive_vars_merged_dtm()
(#1076):derive_var_trtedtm()
- Derive Datetime of Last Exposure to Treatmentderive_var_trtsdtm()
- Derive Datetime of First Exposure to Treatment
-
The
derive_var_disposition_dt()
function was deprecated in favor ofderive_vars_merged_dt()
(#1076) -
The
derive_var_atirel()
function was deprecated, as it is deemed as too specific for admiral. Derivations like this can be implemented callingmutate()
andcase_when()
.
-
Additional explanation added to
derive_param_*
andderive_derived_param
functions regarding which variables are populated in the additional rows (#939) -
Updated
derive_var_worst_flag()
andderive_var_extreme_flag()
vignettes to clarify their purpose (#691) -
Added example of ASEQ derivation in ADCM to OCCDS vignette (#720)
-
Examples have been added for
format_reason_default()
,format_eoxxstt_default()
,extend_source_datasets()
andfilter_date_sources()
(#745)
- Naming convention of admiral.xxx packages change to admiralxxx from this point onwards (#968)
Address CRAN comments raised after submitting v0.6.2 (#946)
Address CRAN comments raised after submitting v0.6.1 (#925)
Address CRAN comments raised after submitting v0.6.0 (#918)
derive_vars_dy()
derives the analysis day from one or more--DT(M)
variables (#700)
-
The
derive_last_dose()
function has been split into a general functionderive_vars_last_dose()
and three wrapper functionsderive_var_last_dose_amt()
,derive_var_last_dose_date()
, andderive_var_last_dose_grp()
(#385) -
derive_var_ontrtfl()
now has anew_var
parameter to support the derivation ofONTRxxFL
andONTRTwFL
variables (#721) -
derive_vars_dtm()
,derive_var_disposition
andderive_var_lstalvdt
now havepreserve
argument. A user can preserve partial dates when doing date imputation, e.g.2019---07
would become2019-06-07
by settingpreserve
toTRUE
when doing date_imputation (#592) -
derive_vars_dtm()
now hasignore_seconds_flag
argument so users can suppress"S"
flag if seconds are not recorded in the data (#589)
-
derive_agegr_ema()
,derive_agegr_fda()
,derive_disposition_dt()
,derive_disposition_status()
,derive_extreme_flag()
,derive_worst_flag()
,derive_obs_number()
,derive_disposition_reason()
have been deprecated and renamed in favor ofderive_var_agegr_ema()
,derive_var_agegr_fda()
,derive_var_disposition_dt()
,derive_var_disposition_status()
,derive_var_extreme_flag()
,derive_var_worst_flag()
,derive_var_last_dose()
,derive_var_obs_number()
, andderive_vars_disposition_reason()
respectively (#738) -
derive_var_basec()
andderive_baseline()
have been deprecated in favor of the extendedderive_var_base()
function (#695) -
derive_params_exposure()
has been deprecated and renamed asderive_param_exposure()
(#722) -
The
derive_last_dose()
function has been deprecated in favor ofderive_var_last_dose_date()
(#385) -
The behavior of all functions providing the
date_imputation
parameter, e.g.,derive_vars_dtm()
andderive_vars_dt()
, has changed fordate_imputation = "mid"
. Before the date was imputed as June 15th if both month and day were missing. Now it is imputed as June 30th. For the old behavior please specifydate_imputation = "06-15"
. Please note the behavior has not changed if only the day is missing. In this case the day is imputed as15
(#592) -
derive_var_ontrtfl()
now has anew_var
parameter to support the derivation ofONTRxxFL
andONTRTwFL
variables (#721) -
The following functions and parameters, which were deprecated in previous {admiral} versions, were removed (#513):
derive_aage()
,derive_duration()
,derive_query_vars()
, andderive_suppqual_vars()
functionfns
andfilter_rows
parameters inderive_summary_records()
date_var
andtraceabilty_vars
parameters indthcaus_source()
flag_filter
parameter inderive_extreme_flag()
flag_filter
parameter inderive_var_extreme_flag()
date_var
parameter inlstalvdt_source()
date
parameter inderive_var_ontrtfl()
-
derive_var_agegr_fda()
has been updated to use ranges <18, 18-64, >=65 (#829)
-
README and site homepage has been updated with important new section around expectations of {admiral}, as well as other useful references such as links to conference talks (#868 & #802)
-
New vignette Development Process and improvements made to contribution vignettes (#765 & #758)
-
Updated Pull Request Review Guidance on using
task-list-completed
workflow (#817)
-
GitHub repo moved to pharmaverse org and associated broken site links fixed (#803 & #820)
-
Examples have been added for
format_reason_default
,format_eoxxstt_default
,extend_source_datasets
andfilter_date_sources
(#745)
-
The first truly open source release licensed under Apache 2.0 (#680)
-
New vignette Contributing to admiral (#679)
-
New vignette Unit Test Guidance (#679)
-
Broken links in README have been fixed (#564)
-
derive_vars_dtm_to_tm()
enables the easy conversion of datetime to time variables (#551) -
derive_var_age_years()
derives age in years from a variable providing the age in different units (#569)
-
derive_param_tte()
derives time-to-event-parameters (#546) -
For common time-to-event endpoints event and censoring source objects are provided (#612)
-
assert_list_element()
checks if an element of a list of lists/classes fulfills a condition -
assert_one_to_one()
checks if there is a one to one mapping between two lists of variables -
negate_vars()
negates a list of variables to remove them from a dataset withselect()
-
Unit checks in
derive_param_*()
functions are no longer case sensitive (#631) -
derive_agegr_ema()
andderive_agegr_fda()
gain aage_unit
parameter used to specify the unit of the input age (#569)
-
All SDTM datasets have been moved to the {admiral.test} package (#639)
-
The
min_dates
andmax_dates
parameters ofderive_vars_dt()
andderive_vars_dtm()
no longer expect alist()
butvars()
as input (#405)
-
derive_vars_dtm()
no longer shifts the time of the input--DTC
variable (#436) -
derive_vars_dtm()
Change the min_dates with max_dates in the lapply statement when computing max_dates (#687)
-
New vignette Creating a BDS Time-to-Event ADaM (#549)
-
New vignette Queries Dataset Documentation (#561)
-
New vignette Writing Vignettes (#334)
-
New vignette Pull Request Review Guidance (#554)
-
A section on handling missing values when working with {admiral} has been added to the "Get Started" vignette (#577)
-
Package installation instructions have been added to the README (#558)
-
The documentation of
derive_vars_dtm()
falsely stated that theflag_imputation
parameter should be eitherTRUE
orFALSE
. It now correctly states that the possible values are"time"
,"date"
or"auto"
(#539)
-
convert_blanks_to_na()
can be used to convert SAS blanks, i.e.""
, into proper RNA
values (#482) -
call_derivation()
enables users to call the same function multiple times with some parameters being fixed across iterations and others varying (#403) -
derive_vars_dtm_to_dt()
enables the easy conversion of datetime to date variables (#376) -
derive_var_ontrtfl()
can now handle events with a start and end date rather than just a single assessment date (#395) -
derive_worst_flag()
enables the flagging of worst records (#300)
-
derive_derived_param()
can be used to derive a new parameter from existing parameters in a BDS dataset (#325) -
derive_param_bmi()
,derive_param_bsa()
andderive_param_map()
enables the derivation of the body mass index, body surface area and mean arterial pressure parameters respectively (#368) -
derive_param_qtc()
enables the derivation of corrected QT intervals according to the formula of Bazett, Fridericia or Sagie (#325) -
derive_param_rr()
enables the derivation of the RR interval (#325) -
derive_params_exposure()
enables the derivation of summary exposure parameters (#400) -
derive_param_doseint()
enables the derivation of dose intensity (#179)
-
derive_var_atirel()
enables the derivation of the "Analysis Time Relative to Reference" (#397) -
derive_vars_atc()
can be used to add ATC variables from FACM to ADCM (#396)
-
derive_var_anrind()
now checks whether theAVAL
variable is present in the input dataset (#486) -
All derivation functions check whether the input dataset is grouped and throw an error if it is (#408)
-
use_ad_template()
has been refactored to no longer make use of the {usethis} package which is no longer a dependency of {admiral} (#433) -
A performance issue in
derive_vars_dt()
has been resolved (#384)
-
The
drop_values_from
parameter has been removed fromderive_summary_records()
(#425) -
The format of the
date_imputation
parameter ofderive_vars_dt()
andderive_vars_dtm()
has been changed from "dd-mm" to "mm-dd". Thus, "01-12" now refers to January 12th rather than December 1st (#492) -
Several functions have been renamed. The old names are now deprecated. They can still be used but a warning will be issued (#507)
derive_aage()
->derive_vars_aage()
derive_duration()
->derive_vars_duration()
derive_query_vars()
->derive_vars_query()
derive_suppqual_vars()
->derive_vars_suppqual()
-
The
date_var
parameter oflstalvdt_source()
has been renamed todate
-
The
filter_rows
parameter ofderive_summary_records()
has been renamed tofilter
. Thefns
parameter has been deprecated in favor ofanalysis_var
andsummary_fun
(#491) -
The
date_var
andtraceabilty_vars
parameters ofdthcaus_source()
have been renamed todate
andtraceability_vars
, respectively (#493) -
The
flag_filter
parameter ofderive_extreme_flag()
has been renamed tofilter
(#487)
derive_agegr_fda()
used to returnNA
for ages less than or equal 18. It now returns<=18
(#441)
-
New vignette on "Date and Time Imputation" has been created (#198)
-
A "Guidance for git Usage" has been created (#266)
-
"OCCDS" has been added as a new section on the reference page on the package website (#485)
-
The Programming Strategy has been updated (#495)
-
A search feature has been added to the package website (#438)
-
New template scripts for ADEX (#181), ADCM (#268) and ADEG (#258) have been created
-
New vignette for programming ADEX has been created (#372)
-
A section on how to create query variables (e.g. SMQs in ADAE) has been added to the Occurrence datasets vignette (#370)
-
The BDS vignette has been updated to incorporate examples of ADVS and ADEG specific functions (#371)
- Fixed a critical bug in
use_ad_template()
that prevented the function from being usable at all (#326)
-
Function argument checks have been completely re-written to provide clearer error messages to users (#263, #288)
-
SDTM
SUPP--
datasets can be merged onto their parent domain usingderive_suppqual_vars()
(#145) -
In case a derivation detects duplicate records after applying a
filter
, the dataset of duplicate records is made available to users viaget_duplicates_dataset()
(#202) -
derive_vars_dt()
andderive_vars_dtm()
gain amin_dates
andmax_dates
parameter which can be used to ensure that the imputed date(time) is not before themin_dates
nor after themax_dates
, e.g. avoid thatAENDT
is after the data cut date orASTDT
is before the first treatment date (#158) -
use_ad_template()
can be used to open a template script for an ADaM dataset; all available templates can be displayed usinglist_all_templates()
(#110)
-
EMA and FDA defined age groupings can be derived using
derive_agegr_ema()
andderive_agegr_fda()
, respectively -
Disposition Status can be derived using
derive_disposition_status()
(#92) -
Disposition Reason can be derived using
derive_disposition_reason()
-
Disposition Dates can be derived using
derive_disposition_dt()
(#91) -
Date Last Known Alive can be derived using
derive_var_lstalvdt()
(#94) -
Cause of Death can be derived using
derive_var_dthcaus()
(#93)
- Summary records for BDS datasets, e.g. with
DTYPE == "AVERAGE"
, can be derived usingderive_summary_records()
(#177)
- Last Dose Date(time) can be derived using
derive_last_dose()
-
derive_merged_vars()
has been removed from {admiral} in favor of smaller special purpose functions, e.g.derive_disposition_status()
(#167) -
Function arguments no longer accept expressions created with
expr()
orexprs()
as inputs; instead filter expressions can be passed "as is" and multiple variables have to be wrapped insidevars()
(#187)Old:
derive_extreme_flag( vs, new_var = LASTFL, by_vars = exprs(USUBJID, VSTESTCD, VISIT), order = exprs(VSTPTNUM), mode = "last", flag_filter = expr(VISIT != "BASELINE") )
New:
derive_extreme_flag( vs, new_var = LASTFL, by_vars = vars(USUBJID, VSTESTCD, VISIT), order = vars(VSTPTNUM), mode = "last", flag_filter = VISIT != "BASELINE" )
-
read_dap_m3()
andinitialize()
have been migrated to {admiral.roche} (#272) -
The
start_date
andend_date
parameters ofderive_var_ady()
,derive_var_aendy()
andderive_var_astdy()
have been renamed toreference_date
anddate
, respectively (#121)
-
derive_var_basetype()
no longer drops records which do not match any condition defined in thebasetype
argument (#226) -
Join warnings like "Column
USUBJID
has different attributes on LHS and RHS of join when using left_join()" are no longer displayed (#271) -
For datetimes with time imputed to "00:00:00" the time part is now displayed (#206)