Comprehensive Survival Power Analysis with ClinicoPath
ClinicoPath Module
2026-07-15
Source:vignettes/jsurvival-02-comprehensive-survival-power-analysis.Rmd
jsurvival-02-comprehensive-survival-power-analysis.RmdIntroduction
The survivalPowerComprehensive function in ClinicoPath
provides a unified interface for comprehensive power analysis and sample
size calculations across multiple survival analysis methodologies. This
function consolidates advanced methods from several specialized R
packages including NPHMC, powerSurvEpi, survSNP, survivalpwr, and
rpact.
Key Features
Method Categories
The function supports seven main categories of survival power analysis:
- Standard Methods: Traditional log-rank tests and Cox regression
- Competing Risks: Analysis with competing events
- Advanced Methods: RMST, non-inferiority trials, and adaptive designs
- Genetic Analysis: SNP-based survival studies with various inheritance models
- Cure Models: Mixture cure models with non-proportional hazards
- Sequential Analysis: Group sequential and adaptive trial designs
- Epidemiological Studies: Multi-covariate observational studies
Usage Examples
Basic Log-rank Test Power Analysis
# Calculate sample size for a two-group survival study
result <- survivalPowerComprehensive(
method_category = "standard",
calculation_type = "sample_size",
statistical_method = "logrank_test",
alpha = 0.05,
power = 0.80,
hazard_ratio = 0.70,
allocation_ratio = 1.0,
event_rate = 0.60
)Competing Risks Analysis
# Power analysis for competing risks scenario
result <- survivalPowerComprehensive(
method_category = "competing_risks",
calculation_type = "power",
sample_size = 300,
alpha = 0.05,
competing_event_rate = 0.20,
cumulative_incidence_control = 0.30,
cumulative_incidence_treatment = 0.20
)Genetic Association Studies
# Sample size for SNP-based survival analysis
result <- survivalPowerComprehensive(
method_category = "genetic",
calculation_type = "sample_size",
statistical_method = "snp_additive",
alpha = 5e-8, # Genome-wide significance
power = 0.80,
snp_maf = 0.20,
genetic_model = "additive",
genetic_effect_size = 1.3,
event_rate = 0.40
)Cure Models
# Power analysis for mixture cure models
result <- survivalPowerComprehensive(
method_category = "cure_models",
calculation_type = "power",
sample_size = 400,
alpha = 0.05,
cure_rate_control = 0.20,
cure_rate_treatment = 0.40,
survival_distribution = "weibull",
accrual_distribution = "uniform"
)Sequential Trial Design
# Group sequential design with interim analyses
result <- survivalPowerComprehensive(
method_category = "sequential",
calculation_type = "sample_size",
statistical_method = "group_sequential",
alpha = 0.05,
power = 0.80,
hazard_ratio = 0.75,
number_of_looks = 3,
spending_function = "obrien_fleming",
interim_futility_boundary = 0.30
)Epidemiological Studies
# Multi-covariate observational study
result <- survivalPowerComprehensive(
method_category = "epidemiological",
calculation_type = "sample_size",
statistical_method = "multivariable_cox",
alpha = 0.05,
power = 0.80,
hazard_ratio = 1.50,
number_of_covariates = 5,
covariate_correlation = 0.30,
covariate_distribution = "mixed",
adjust_for_confounders = TRUE
)Parameter Guide
Core Parameters
- method_category: Choose from standard, competing_risks, advanced, genetic, cure_models, sequential, epidemiological
- calculation_type: sample_size, power, or effect_size
- statistical_method: Specific method within each category
- alpha: Type I error rate (typically 0.05)
- power: Desired statistical power (typically 0.80 or 0.90)
Study Design Parameters
- study_design: simple or complex
- sample_size: Total sample size (for power/effect size calculations)
- allocation_ratio: Ratio of control to treatment group sizes
- event_rate: Expected proportion of events
Survival Parameters
- hazard_ratio: Effect size for most methods
- median_survival_control/treatment: Median survival times
- accrual_period: Patient recruitment duration
- follow_up_period: Additional follow-up time
- dropout_rate: Loss to follow-up rate
Method-Specific Parameters
Genetic Analysis
- snp_maf: Minor allele frequency
- genetic_model: additive, dominant, or recessive
- genetic_effect_size: Genetic relative risk
Cure Models
- cure_rate_control/treatment: Proportion cured in each group
- survival_distribution: Underlying survival distribution
- accrual_distribution: Patient recruitment pattern
Output Interpretation
Power Analysis Results
The function returns comprehensive results including:
- Primary Calculation: Sample size, power, or effect size
- Study Design Summary: Key parameters and assumptions
- Method Details: Specific methodology used
- Sensitivity Analysis: Results under different assumptions
- Recommendations: Guidance for study planning
Advanced Features
RMST Analysis
For restricted mean survival time analysis:
result <- survivalPowerComprehensive(
method_category = "advanced",
statistical_method = "rmst",
rmst_timepoint = 36, # months
calculation_type = "sample_size",
alpha = 0.05,
power = 0.80
)Best Practices
Study Planning
- Start Simple: Begin with standard methods before exploring advanced options
- Conservative Assumptions: Use conservative effect sizes and event rates
- Sensitivity Analysis: Test multiple scenarios and assumptions
- Expert Consultation: Validate assumptions with domain experts
Quality Assurance
Troubleshooting
Conclusion
The survivalPowerComprehensive function provides a
unified, comprehensive platform for survival power analysis across
multiple methodologies. Its modular design allows for standard
calculations while supporting advanced methods for specialized research
needs.
For additional examples and detailed methodology, see the ClinicoPath package documentation and the underlying specialized packages (NPHMC, powerSurvEpi, survSNP, survivalpwr, rpact).