| output |
|---|
StatsTFLValR is an R package providing reusable, audit-ready utilities for validation of clinical trial datasets and outputs.
It is designed to support dataset review, comparison, counting, and table-level verification commonly required in regulated statistical programming workflows.
The package emphasizes:
- Standardization and reproducibility
- Transparent validation logic
- Clear, review-friendly outputs
- Integration with controlled and GxP-aligned programming environments
StatsTFLValR is intended for use by Statistical Programmers, Statisticians, and validation reviewers.
get_data()– Load datasets from multiple formats (XPT, SAS, CSV, RDS) with validation and duplicate-file checksget_column_info()– Extract variable-level metadata (names, types, labels) for dataset inspection and documentation
freq_by()– Grouped subject counts and percentage summariesfreq_by_line()– Line-level frequency summaries for table-ready outputsmean_by()– Grouped descriptive statistics (mean, median, quantiles)sas_round()– SAS-style rounding utility for consistent percentages
SOCbyPT()– SOC–PT–level adverse event summariesSOCbyPT_Grade()– SOC–PT adverse event tables with toxicity grade splitsATCbyDrug()– Fully nested ATC-based concomitant medication summaries
Built-in ordering, indentation, and formatting logic is designed to support TFL validation and QC review.
generate_compare_report()– PROC COMPARE–style dataset comparison utility- Identifies added, deleted, and modified records
- Compares variable attributes and values
- Produces structured, review-ready outputs
- Centralized global variable declarations (
globals.R) to support CRAN checks - Internal helper utilities (
ps_helpers.R) reused across functions to ensure consistent behavior
The following functions are currently exported in StatsTFLValR:
get_data()– Multi-format dataset loadingget_column_info()– Variable-level metadata extractionfreq_by()– Grouped N (%) summariesfreq_by_line()– Line-level frequency summariesmean_by()– Grouped descriptive statisticssas_round()– SAS-style rounding utilitySOCbyPT()– SOC–PT AE table generationSOCbyPT_Grade()– SOC–PT AE tables with grade splitsATCbyDrug()– ATC-based medication summariesgenerate_compare_report()– Dataset comparison (PROC COMPARE–style)
| Capability Area | Function(s) | Typical Use Case |
|---|---|---|
| Dataset loading | get_data() |
Load datasets for review and QC |
| Metadata inspection | get_column_info() |
Variable-level dataset inspection |
| Frequency summaries | freq_by(), freq_by_line() |
N (%) table validation |
| Descriptive statistics | mean_by() |
Summary statistics QC |
| AE table validation | SOCbyPT(), SOCbyPT_Grade() |
SOC–PT AE tables |
| Concomitant medication summaries | ATCbyDrug() |
ATC-based summaries |
| Dataset comparison | generate_compare_report() |
Developer vs validator comparison |
| Rounding consistency | sas_round() |
SAS-aligned rounding |
install.packages("StatsTFLValR")
or
install.packages("StatsTFLValR", dependencies = TRUE)
# install.packages("remotes")
remotes::install_github("kalsem/StatsTFLValR")library(StatsTFLValR)
packageVersion("StatsTFLValR")library(StatsTFLValR)Access function-level documentation:
?freq_by
?generate_compare_reportA PDF reference manual is available in the GitHub repository. 📄 Download StatsTFLValR PDF Manual
Lifecycle: Experimental
Under active development
Interfaces and behavior may change in future releases
Bug reports and enhancement requests can be submitted via GitHub issues.
This package is licensed under the MIT License. See the LICENSE file for details.
This package is provided as a supporting utility and does not replace formal validation or quality control processes.
Use of this package does not imply compliance with regulatory requirements.
Users are responsible for ensuring appropriate validation, documentation, and governance in accordance with their internal procedures.
