# Basic unimodal model averaging
# Scenario: Targeted therapy with efficacy peak at intermediate dose
# Dose-response data showing unimodal pattern
observed_responses <- c(2, 6, 12, 8, 4) # Peak at dose 3
total_patients <- c(8, 10, 15, 12, 9)
# Apply multi-unimodal isotonic regression
averaged_probs <- multi.iso(obs = observed_responses, n = total_patients)
# Compare with simple observed probabilities
simple_probs <- observed_responses / total_patients
# Display comparison
results <- data.frame(
Dose = 1:5,
Observed_Events = observed_responses,
Total_Patients = total_patients,
Simple_Probability = round(simple_probs, 3),
MultiIso_Probability = round(averaged_probs, 3),
Difference = round(averaged_probs - simple_probs, 3)
)
cat("Unimodal Model Averaging Results:\\n")
print(results)
Run the code above in your browser using DataLab