What Is a Rolling Baseline and How to Use ?

 

What Is a Rolling Baseline?

rolling baseline refers to a flexible approach to defining the baseline time point for each participant, especially when participants are enrolled at different times or when baseline data is collected over a period rather than at a fixed time.

In External Studies:

  • External studies often use real-world data or external control arms.
  • A rolling baseline allows each subject’s index date (start of observation or treatment) to be defined individually, based on when they meet inclusion criteria or initiate treatment.
  • This is especially useful when aligning external data with internal trial data for comparative analysis.

🧠 Why Use a Rolling Baseline?

  • Variable Enrollment Timing: Participants may enter the study at different times, so a fixed baseline date isn't feasible.
  • Real-World Data Integration: When using external data sources (e.g., EHRs, registries), the baseline must be tailored to each subject’s timeline.
  • Minimizing Bias: Helps ensure that baseline measurements are truly pre-treatment and not influenced by early intervention effects .

⚠️ Considerations

  • Baseline Integrity: Extending the baseline period too far risks including data influenced by treatment, which can bias results .
  • Statistical Adjustment: Analyses must account for differences in baseline timing and characteristics to ensure valid comparisons .
  • Documentation: Clear definition of how baseline is determined for each subject is essential for transparency and reproducibility .

📊 Example Use Case

In an OLE (Open Label Extension) or external control study, you might:

  1. Identify when each subject first meets inclusion criteria.
  2. Define that date as their rolling baseline.
  3. Use it to anchor follow-up measurements and compare outcomes post-baseline.



SAS Code: Rolling Baseline and Post-Baseline Merge

Step 1: Identify Rolling Baseline per Subject

/* Sort external dataset by SubjectID and date */

proc sort data=external_data;

    by SubjectID EventDate;

run;

/* Apply inclusion criteria and select first qualifying record as rolling baseline */

data rolling_baseline;

    set external_data;

    where Age >= 6 and Age <= 13 and VisitType = "Baseline";

    by SubjectID;

    if first.SubjectID then do;

        IndexFlag = 1;

        PostIndexFlag = 0;

        rename EventDate = IndexDate;

        output;

    end;

run;



Step 2: Merge with External Data to Get Post-Baseline Records

/* Sort external data again for merging */

proc sort data=external_data;

    by SubjectID EventDate;

run;

/* Merge and filter post-baseline records */

data post_baseline;

    merge external_data(in=ext) rolling_baseline(in=idx);

    by SubjectID;

    if ext and idx and EventDate > IndexDate then do;

        IndexFlag = 0;

        PostIndexFlag = 1;

        output;

    end;

run;

Step 3: Combine Baseline and Post-Baseline Records

data combined_rolling_baseline;

    set rolling_baseline post_baseline;

run;

Comments

Popular posts from this blog

Analysis of Repeated Measures Data using SAS (1)

Understanding Binding vs. Non-Binding Futility Analysis in Clinical Trials

Medical information for Melanoma, Merkel cell carcinoma and tumor mutation burden