def print_outcomes(simOutput, screening): # mean and CI text of discounted total cost cost_mean_CI_text = Format.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_cost().get_mean(), interval=simOutput.get_sumStat_discounted_cost().get_t_CI( alpha=Data.ALPHA), deci=2) # mean and CI text of discounted utility utility_mean_CI_text = Format.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_utility().get_mean(), interval=simOutput.get_sumStat_discounted_utility().get_t_CI( alpha=Data.ALPHA), deci=2) # print outcomes print(screening) print( " Estimate of discounted cost and {:.{prec}%} confidence interval:". format(1 - Data.ALPHA, prec=0), cost_mean_CI_text) print( " Estimate of discounted utility and {:.{prec}%} confidence interval:". format(1 - Data.ALPHA, prec=0), utility_mean_CI_text)
def print_outcomes(simOutput, therapy_name): """ prints the outcomes of a simulated cohort :param simOutput: output of a simulated cohort :param therapy_name: the name of the selected therapy """ # mean and confidence interval text of patient survival time # ect_mean_CI_text = F.format_estimate_interval( # estimate=simOutput.get_sumStat_eclampsia_times.get_mean(), # interval=simOutput.get_sumStat_eclampsia_times().get_t_CI(alpha=Settings.ALPHA), # deci=2) cost_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_cost().get_mean(), interval=simOutput.get_sumStat_discounted_cost().get_t_CI( alpha=Settings.ALPHA), deci=2) utility_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_utility().get_mean(), interval=simOutput.get_sumStat_discounted_utility().get_t_CI( alpha=Settings.ALPHA), deci=2) # print outcomes print(therapy_name) #print(" Estimate of mean and {:.{prec}%} CI of time to seizure:".format(1 - Settings.ALPHA, prec=0), # ect_mean_CI_text) print( " Estimate of discounted cost and {:.{prec}%} CI:".format( 1 - Settings.ALPHA, prec=0), cost_mean_CI_text) print( " Estimate of discounted utility and {:.{prec}%} CI:".format( 1 - Settings.ALPHA, prec=0), utility_mean_CI_text) print("")
def print_comparative_outcomes(sim_output_no_drug, sim_output_with_drug): """ prints expected and percentage increase in survival time when drug is available :param sim_output_no_drug: output of a fair game :param sim_output_with_drug: output of an unfair game """ # increase in survival time increase = Stat.DifferenceStatIndp(name='Increase in casino rewards', x=sim_output_with_drug.get_rewards(), y_ref=sim_output_no_drug.get_rewards()) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=increase.get_mean(), interval=increase.get_t_CI(alpha=P.ALPHA), deci=1) print( "Average increase in casino rewards and {:.{prec}%} confidence interval:" .format(1 - P.ALPHA, prec=0), estimate_CI) # % increase in survival time relative_diff = Stat.RelativeDifferenceIndp( name='Average % increase in casino rewards', x=sim_output_with_drug.get_rewards(), y_ref=sim_output_no_drug.get_rewards()) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=relative_diff.get_mean(), interval=relative_diff.get_bootstrap_CI(alpha=P.ALPHA, num_samples=1000), deci=1, form=Format.FormatNumber.PERCENTAGE) print( "Average percentage increase in casino rewards and {:.{prec}%} confidence interval:" .format(1 - P.ALPHA, prec=0), estimate_CI)
def print_outcomes(simOutput, therapy_name, Problem7): """ prints the outcomes of a simulated cohort :param simOutput: output of a simulated cohort :param therapy_name: the name of the selected therapy :param Problem7: is this for problem 7? """ # mean and confidence interval text of patient survival time survival_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_survival_times().get_mean(), interval=simOutput.get_sumStat_survival_times().get_t_CI(alpha=ALPHA), deci=2) # mean and confidence interval text of time to STROKE time_to_STROKE_death_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_time_to_STROKE().get_mean(), interval=simOutput.get_sumStat_time_to_STROKE().get_t_CI(alpha=ALPHA), deci=2) # print outcomes print(therapy_name) if Problem7 == "No": print(" Estimate of mean survival time and {:.{prec}%} confidence interval:".format(1 - ALPHA, prec=0), survival_mean_CI_text) elif Problem7 == "Yes": print(" Estimate of mean number of strokes and {:.{prec}%} confidence interval:".format(1 - ALPHA, prec=0), time_to_STROKE_death_CI_text)
def print_outcomes(simOutput, therapy_name): """ prints the outcomes of a simulated cohort :param simOutput: output of a simulated cohort :param therapy_name: the name of the selected therapy """ # mean and confidence interval text of patient survival time survival_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_survival_times().get_mean(), interval=simOutput.get_sumStat_survival_times().get_t_CI( alpha=Settings.ALPHA), deci=2) # mean and confidence interval text of time to stroke strokes_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_count_strokes().get_mean(), interval=simOutput.get_sumStat_count_strokes().get_t_CI( alpha=Settings.ALPHA), deci=2) # print outcomes print(therapy_name) print( " Estimate of mean and {:.{prec}%} confidence interval of survival time:" .format(1 - Settings.ALPHA, prec=0), survival_mean_CI_text) print( " Estimate of mean and {:.{prec}%} confidence interval of time to stroke:" .format(1 - Settings.ALPHA, prec=0), strokes_mean_CI_text) print("")
def print_comparative_outcomes(simOutputs_mono, simOutputs_combo): """ prints average increase in survival time, discounted cost, and discounted utility under combination therapy compared to mono therapy :param simOutputs_mono: output of a cohort simulated under mono therapy :param simOutputs_combo: output of a cohort simulated under combination therapy """ # Antibiotics exposure time increase_exposure_time = simOutputs_combo.get_sumStat_survival_times().get_total() \ - simOutputs_mono.get_sumStat_survival_times().get_total() print("Increase in total antibiotics exposure time (day):", increase_exposure_time) #### Survival time #### increase_survival_time = Stat.DifferenceStatIndp( name='Increase in survival time', x=simOutputs_combo.get_survival_times(), y_ref=simOutputs_mono.get_survival_times()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_survival_time.get_mean(), interval=increase_survival_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average change in antibiotic exposure time (day) " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI) #### Discounted total cost #### increase_discounted_cost = Stat.DifferenceStatIndp( name='Increase in discounted total cost', x=simOutputs_combo.get_costs(), y_ref=simOutputs_mono.get_costs()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_cost.get_mean(), interval=increase_discounted_cost.get_t_CI(alpha=Settings.ALPHA), deci=0, form=F.FormatNumber.CURRENCY) print( "Average increase in discounted total cost " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI) #### Discounted total utility #### increase_discounted_utility = Stat.DifferenceStatIndp( name='Increase in discounted total utility', x=simOutputs_combo.get_utilities(), y_ref=simOutputs_mono.get_utilities()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_utility.get_mean(), interval=increase_discounted_utility.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in discounted total utility " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI)
def print_comparative_outcomes(sim_output_fair_coins, sim_output_unfair_coins): """ prints expected and percentage increase in survival time when drug is available :param sim_output_no_drug: output of a cohort simulated when drug is not available :param sim_output_with_drug: output of a cohort simulated when drug is available """ # increase in rewards increase = Stat.DifferenceStatIndp( name='Increase in survival time', x=sim_output_unfair_coins.get_rewards(), y_ref=sim_output_fair_coins.get_rewards()) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=increase.get_mean(), interval=increase.get_t_CI(alpha=P.ALPHA), deci=1) print( "Average increase in rewards for casino owners and {:.{prec}%} confidence interval" " when using unfair coins:".format(1 - P.ALPHA, prec=0), estimate_CI) # % increase in rewards relative_diff = Stat.RelativeDifferenceIndp( name='Average % increase in survival time', x=sim_output_unfair_coins.get_rewards(), y_ref=sim_output_fair_coins.get_rewards()) # estimate and CI estimate_CI2 = Format.format_estimate_interval( estimate=-relative_diff.get_mean(), interval=-relative_diff.get_bootstrap_CI(alpha=P.ALPHA, num_samples=1000), deci=1, form=Format.FormatNumber.PERCENTAGE) print( "Average percentage of increase rewards for casino owners and {:.{prec}%} confidence interval" " when using unfair coins:".format(1 - P.ALPHA, prec=0), estimate_CI2)
def print_comparative_outcomes(sim_output_high, sim_output_low): # increase in survival time increase = Stat.DifferenceStatIndp(name='Increase in game score', x=sim_output_high, y_ref=sim_output_low) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=increase.get_mean(), interval=increase.get_t_CI(alpha=0.05), deci=1) print( "Average increase in game score and {:.{prec}%} confidence interval:". format(1 - 0.05, prec=0), estimate_CI) # % increase in survival time relative_diff = Stat.RelativeDifferenceIndp( name='Average % increase in game score', x=sim_output_high, y_ref=sim_output_low) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=relative_diff.get_mean(), interval=relative_diff.get_bootstrap_CI(alpha=0.05, num_samples=1000), deci=1, form=Format.FormatNumber.PERCENTAGE) print( "Average percentage increase in game score and {:.{prec}%} confidence interval:" .format(1 - 0.05, prec=0), estimate_CI)
def print_outcomes(simOutput, treatment): # mean and CI text for patient survival time survival_mean_CI_text = Format.format_estimate_interval( estimate=simOutput.get_sumStat_survival_times().get_mean(), interval=simOutput.get_sumStat_survival_times().get_t_CI(alpha=Data.ALPHA), deci=2 ) # mean and CI text of discounted total cost cost_mean_CI_text = Format.format_estimate_interval( estimate=simOutput.get_sumStat_costs().get_mean(), interval=simOutput.get_sumStat_costs().get_t_CI(alpha=Data.ALPHA), deci=2 ) # mean and CI text of discounted utility utility_mean_CI_text = Format.format_estimate_interval( estimate=simOutput.get_sumStat_utilities().get_mean(), interval=simOutput.get_sumStat_utilities().get_t_CI(alpha=Data.ALPHA), deci=2 ) # print outcomes print(treatment) print(" Estimate of mean survival time and {:.{prec}%} confidence interval:".format(1 - Data.ALPHA, prec=0), survival_mean_CI_text) print(" Estimate of discounted cost and {:.{prec}%} confidence interval:".format(1 - Data.ALPHA, prec=0), cost_mean_CI_text) print(" Estimate of discounted utility and {:.{prec}%} confidence interval:".format(1 - Data.ALPHA, prec=0), utility_mean_CI_text)
def print_outcomes(simOutput, therapy_name): """ prints the outcomes of a simulated cohort :param simOutput: output of a simulated cohort :param therapy_name: the name of the selected therapy """ # mean and confidence interval text of patient survival time survival_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_survival_times().get_mean(), interval=simOutput.get_sumStat_survival_times().get_t_CI(alpha=Settings.ALPHA), deci=2) # mean and confidence interval text of discounted total cost cost_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_cost().get_mean(), interval=simOutput.get_sumStat_discounted_cost().get_t_CI(alpha=Settings.ALPHA), deci=0, form=F.FormatNumber.CURRENCY) # mean and confidence interval text of discounted total utility utility_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_utility().get_mean(), interval=simOutput.get_sumStat_discounted_utility().get_t_CI(alpha=Settings.ALPHA), deci=2) # print outcomes print(therapy_name) print(" Estimate of mean survival time and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), survival_mean_CI_text) print(" Estimate of discounted cost and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), cost_mean_CI_text) print(" Estimate of discounted utility and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), utility_mean_CI_text) print("")
def print_comparative_outcomes(sim_output_unfair, sim_output_fair): increase = Stat.DifferenceStatIndp(name='Increase in rewards', x=sim_output_unfair.get_rewards(), y_ref=sim_output_fair.get_rewards()) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=increase.get_mean(), interval=increase.get_t_CI(alpha=P.ALPHA), deci=1) print( "Average increase in reward and {:.{prec}%} confidence interval:". format(1 - P.ALPHA, prec=0), estimate_CI) # % increase in survival time relative_diff = Stat.RelativeDifferenceIndp( name='Average % increase in rewards', x=sim_output_unfair.get_rewards(), y_ref=sim_output_fair.get_rewards()) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=relative_diff.get_mean(), interval=relative_diff.get_bootstrap_CI(alpha=P.ALPHA, num_samples=1000), deci=1, form=Format.FormatNumber.PERCENTAGE) print( "Average percentage increase in reward and {:.{prec}%} confidence interval:" .format(1 - P.ALPHA, prec=0), estimate_CI)
def print_comparative_outcomes(simOutputs_mono, simOutputs_combo): """ prints average increase in survival time, discounted cost, and discounted utility under combination therapy compared to mono therapy :param simOutputs_mono: output of a cohort simulated under mono therapy :param simOutputs_combo: output of a cohort simulated under combination therapy """ # increase in survival time under combination therapy with respect to mono therapy increase_survival_time = Stat.DifferenceStatIndp( name='Increase in survival time', x=simOutputs_combo.get_survival_times(), y_ref=simOutputs_mono.get_survival_times()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_survival_time.get_mean(), interval=increase_survival_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in survival time " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total cost under combination therapy with respect to mono therapy increase_discounted_cost = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_combo.get_costs(), y_ref=simOutputs_mono.get_costs()) # estimate and CI estimate_CI_cost = F.format_estimate_interval( estimate=increase_discounted_cost.get_mean(), interval=increase_discounted_cost.get_t_CI(alpha=Settings.ALPHA), deci=0, form=F.FormatNumber.CURRENCY) print( "Average increase in discounted cost " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI_cost) # increase in discounted total utility under combination therapy with respect to mono therapy increase_discounted_utility = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_combo.get_utilities(), y_ref=simOutputs_mono.get_utilities()) # estimate and CI estimate_CI_utility = F.format_estimate_interval( estimate=increase_discounted_utility.get_mean(), interval=increase_discounted_utility.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in discounted utility " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI_utility)
def print_comparative_outcomes(simOutputs_ANNUAL, simOutputs_SEMI): """ prints average increase in infection time, discounted cost, and discounted utility under combination therapy compared to mono therapy :param simOutputs_mono: output of a cohort simulated under mono therapy :param simOutputs_combo: output of a cohort simulated under combination therapy """ decrease_infection_time = Stat.DifferenceStatIndp( name="decrease in infection time", x=simOutputs_SEMI.get_infection_durations(), y_ref=simOutputs_ANNUAL.get_infection_durations()) estimate_CI = F.format_estimate_interval( estimate=decrease_infection_time.get_mean(), interval=decrease_infection_time.get_t_CI(alpha=Settings.ALPHA), deci=2) estimate_CI = F.format_estimate_interval( estimate=decrease_infection_time.get_mean(), interval=decrease_infection_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average decrease in infection duration " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total cost under combination therapy with respect to mono therapy increase_discounted_cost = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_SEMI.get_costs(), y_ref=simOutputs_ANNUAL.get_costs()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_cost.get_mean(), interval=increase_discounted_cost.get_t_CI(alpha=Settings.ALPHA), deci=0, form=F.FormatNumber.CURRENCY) print( "Average increase in discounted cost " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total utility under combination therapy with respect to mono therapy increase_discounted_utility = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_SEMI.get_utilities(), y_ref=simOutputs_ANNUAL.get_utilities()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_utility.get_mean(), interval=increase_discounted_utility.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in discounted utility " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI)
def print_comparative_outcomes(simOutputs_warfarin, simOutputs_Dabigitran150): """ prints average increase in survival time, discounted cost, and discounted utility under dab therapy compared to warf therapy :param simOutputs_warfarin: output of a cohort simulated under warfarin therapy :param simOutputs_Dabigitran150: output of a cohort simulated under dab therapy """ # increase in survival time under dab therapy with respect to warf therapy increase_survival_time = Stat.DifferenceStatIndp( name="Increase in survival time", x=simOutputs_Dabigitran150.get_survival_times(), y_ref=simOutputs_warfarin.get_survival_times()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_survival_time.get_mean(), interval=increase_survival_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in survival time " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total cost under dab therapy with respect to warfarin therapy increase_discounted_cost = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_Dabigitran150.get_costs(), y_ref=simOutputs_warfarin.get_costs()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_cost.get_mean(), interval=increase_discounted_cost.get_t_CI(alpha=Settings.ALPHA), deci=0, form=F.FormatNumber.CURRENCY) print( "Average increase in discounted cost " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total utility under dab therapy with respect to warfarin therapy increase_discounted_utility = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_Dabigitran150.get_utilities(), y_ref=simOutputs_warfarin.get_utilities()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_utility.get_mean(), interval=increase_discounted_utility.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in discounted utility " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI)
def print_outcomes(simOutput, therapy_name): """ prints the outcomes of a simulated cohort :param simOutput: output of a simulated cohort :param therapy_name: the name of the selected therapy """ # mean and confidence interval text of patient survival time survival_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_survival_times().get_mean(), interval=simOutput.get_sumStat_survival_times().get_t_CI( alpha=Settings.ALPHA), deci=2) # mean of number of stroke stroke_mean = F.format_estimate_interval( estimate=simOutput.get_sumStat_stroke().get_mean(), interval=simOutput.get_sumStat_stroke().get_t_CI(alpha=Settings.ALPHA), deci=2) # mean and confidence interval text of time to AIDS #time_to_HIV_death_CI_text = F.format_estimate_interval( #estimate=simOutput.get_sumStat_time_to_AIDS().get_mean(), #interval=simOutput.get_sumStat_time_to_AIDS().get_t_CI(alpha=Settings.ALPHA), #deci=2) # mean and confidence interval text of discounted total cost #cost_mean_CI_text = F.format_estimate_interval( #estimate=simOutput.get_sumStat_discounted_cost().get_mean(), #interval=simOutput.get_sumStat_discounted_cost().get_t_CI(alpha=Settings.ALPHA), #deci=0, #form=F.FormatNumber.CURRENCY) # mean and confidence interval text of discounted total utility #utility_mean_CI_text = F.format_estimate_interval( #estimate=simOutput.get_sumStat_discounted_utility().get_mean(), #interval=simOutput.get_sumStat_discounted_utility().get_t_CI(alpha=Settings.ALPHA), #deci=2) # print outcomes print(therapy_name) print( " Estimate of mean survival time and {:.{prec}%} confidence interval:" .format(1 - Settings.ALPHA, prec=0), survival_mean_CI_text) print( " Estimate of mean number of stroke {:.{prec}%} confidence interval:". format(1 - Settings.ALPHA, prec=0), stroke_mean) #print(" Estimate of mean time to AIDS and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), #time_to_HIV_death_CI_text) #print(" Estimate of discounted cost and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), #cost_mean_CI_text) #print(" Estimate of discounted utility and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), #utility_mean_CI_text) print("")
def print_comparative_outcomes(simOutputs_A, simOutputs_B): # prints average increase in survival time, discounted cost, and discounted utility # increase in survival time comparing two therapies increase_survival_time = Stat.DifferenceStatIndp( name="Increase in survival time", x=simOutputs_B.get_survival_times(), y_ref=simOutputs_A.get_survival_times()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_survival_time.get_mean(), interval=increase_survival_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in survival time " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total cost comparing two therapies increase_discounted_cost = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_B.get_costs(), y_ref=simOutputs_A.get_costs()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_cost.get_mean(), interval=increase_discounted_cost.get_t_CI(alpha=Settings.ALPHA), deci=0, form=F.FormatNumber.CURRENCY) print( "Average increase in discounted cost " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI) # increase in discounted total utility comparing two therapies increase_discounted_utility = Stat.DifferenceStatIndp( name='Increase in discounted cost', x=simOutputs_B.get_utilities(), y_ref=simOutputs_A.get_utilities()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_discounted_utility.get_mean(), interval=increase_discounted_utility.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in discounted utility " "and {:.{prec}%} CI:".format(1 - Settings.ALPHA, prec=0), estimate_CI)
def get_mean_survival_proj_interval(self, alpha, deci): mean = self._multiCohorts.get_overall_mean_survival() proj_interval = self._multiCohorts.get_PI_mean_surviavl(alpha) return FormatSupport.format_estimate_interval(mean, proj_interval, deci)
def print_comparative_outcomes(simOutputs_mono, simOutputs_combo): """ prints average increase in survival time, discounted cost, and discounted utility under combination therapy compared to mono therapy :param simOutputs_mono: output of a cohort simulated under mono therapy :param simOutputs_combo: output of a cohort simulated under combination therapy """ # increase in survival time under combination therapy with respect to mono therapy if Settings.PSA_ON: increase_survival_time = Stat.DifferenceStatPaired( name='Increase in survival time', x=simOutputs_combo.get_survival_times(), y_ref=simOutputs_mono.get_survival_times()) else: increase_survival_time = Stat.DifferenceStatIndp( name='Increase in survival time', x=simOutputs_combo.get_survival_times(), y_ref=simOutputs_mono.get_survival_times()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_survival_time.get_mean(), interval=increase_survival_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print( "Average increase in survival time " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI)
def print_comparative_outcomes(simOutputs_no_therapy, simOutputs_anticoagulation): """ :param simOutputs_no_therapy: :param simOutputs_anticoagulation: :return: """ # increase in survival time under anticoagulation therapy with respect to no therapy if Settings.PSA_ON: increase_survival_time = Stat.DifferenceStatPaired( name='Increase in survival time', x=simOutputs_anticoagulation.get_survival_times(), y_ref=simOutputs_no_therapy.get_survival_times()) else: increase_survival_time = Stat.DifferenceStatIndp( name='Increase in survival time', x=simOutputs_anticoagulation.get_survival_times(), y_ref=simOutputs_no_therapy.get_survival_times()) # estimate and CI estimate_CI = F.format_estimate_interval( estimate=increase_survival_time.get_mean(), interval=increase_survival_time.get_t_CI(alpha=Settings.ALPHA), deci=2) print("Average increase in survival time " "and {:.{prec}%} confidence interval:".format(1 - Settings.ALPHA, prec=0), estimate_CI)
def get_survival_estimate_credible_interval(self, alpha, deci): sum_stat = StatSupport.SummaryStat('Posterior Samples', self._survivalResamples) estimate = sum_stat.get_mean() credible_interval = sum_stat.get_PI(alpha) return FormatSupport.format_estimate_interval(estimate, credible_interval, deci)
def print_mean_stroke_outcomes(simOutput, therapyName): mean_strokes_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_strokes().get_mean(), interval=simOutput.get_sumStat_strokes().get_t_CI(alpha=Settings.ALPHA), deci=2) print(" Estimate of mean number of strokes and {:.{prec}%} confidence interval:".format(1 - Data.ALPHA, prec=0), mean_strokes_CI_text)
def print_outcomes(sim_output, coin_type): reward_mean_CI_text = Format.format_estimate_interval( estimate=sim_output.get_ave_reward(), interval=sim_output.get_CI_reward(alpha=P.ALPHA), deci=1) print(coin_type) print("Estimate of game reward and {:.{prec}%} confidence interval:".format(1 - P.ALPHA, prec=0), reward_mean_CI_text)
def print_outcomes(multi_cohort, strategy_name): reward_mean_PI_text = Format.format_estimate_interval( estimate=multi_cohort.get_mean_total_reward(), interval=multi_cohort.get_PI_total_reward(alpha=P.ALPHA), deci=1) print(strategy_name) print( "Estimate of mean game reward and {:.{prec}%} prediction interval:". format(1 - P.ALPHA, prec=0), reward_mean_PI_text)
def print_outcomes(simOutput, therapy_name): """ prints the outcomes of a simulated cohort :param simOutput: output of a simulated cohort :param therapy_name: the name of the selected therapy """ # total of patient exposure time to antibiotics survival_total_text = simOutput.get_sumStat_survival_times().get_total() # mean and confidence interval text of patient survival time survival_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_survival_times().get_mean(), interval=simOutput.get_sumStat_survival_times().get_t_CI( alpha=Settings.ALPHA), deci=2) # mean and confidence interval text of discounted total cost cost_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_cost().get_mean(), interval=simOutput.get_sumStat_discounted_cost().get_t_CI( alpha=Settings.ALPHA), deci=2) # mean and confidence interval text of discounted total cost utility_mean_CI_text = F.format_estimate_interval( estimate=simOutput.get_sumStat_discounted_utility().get_mean(), interval=simOutput.get_sumStat_discounted_utility().get_t_CI( alpha=Settings.ALPHA), deci=2) # print outcomes print(therapy_name) print(" Estimate of total patient exposure time to antibiotics (days):", survival_total_text) print( " Estimate of mean and {:.{prec}%} confidence interval of survival time:" .format(1 - Settings.ALPHA, prec=0), survival_mean_CI_text) print( " Estimate of mean and {:.{prec}%} confidence interval of discounted total cost:" .format(1 - Settings.ALPHA, prec=0), cost_mean_CI_text) print( " Estimate of mean and {:.{prec}%} confidence interval of discounted total utility:" .format(1 - Settings.ALPHA, prec=0), utility_mean_CI_text) print("")
def print_results(stat): print(' Average =', Support.format_number(stat.get_mean(), digits=3)) print(' St Dev =', Support.format_number(stat.get_stdev(), digits=3)) print(' Min =', Support.format_number(stat.get_min(), digits=3)) print(' Max =', Support.format_number(stat.get_max(), digits=3)) print(' Median =', Support.format_number(stat.get_percentile(50), digits=3)) print(' 95% Mean Confidence Interval (t-based) =', Support.format_interval(stat.get_t_CI(0.05), 3)) print(' 95% Mean Confidence Interval (bootstrap) =', Support.format_interval(stat.get_bootstrap_CI(0.05, 1000), 3)) print(' 95% Percentile Interval =', Support.format_interval(stat.get_PI(0.05), 3))
def print_outcomes(sim_output, strategy_name): rewards_mean_CI_text = Format.format_estimate_interval( estimate=sim_output.get_ave_reward(), interval=sim_output.get_CI_reward(alpha=P.ALPHA), deci=1) print(strategy_name) print( "Estimate of mean game rewards and {:.{prec}%} confidence interval:". format(1 - P.ALPHA, prec=1), rewards_mean_CI_text)
def get_mean_survival_time_proj_interval(self, alpha, deci): """ :param alpha: the significance level :param deci: decimal places :returns text in the form of 'mean (lower, upper)' of projection interval """ mean = self._multiCohorts.get_overall_mean_survival() proj_interval = self._multiCohorts.get_PI_mean_survival(alpha) return FormatSupport.format_estimate_interval(mean, proj_interval, deci)
def print_outcomes(multi_gameset, coin_type): reward_mean_PI_text = Format.format_estimate_interval( estimate=multi_gameset.get_overall_mean_reward(), interval=multi_gameset.get_PI_mean_reward(alpha=P.ALPHA), deci=1) print(coin_type) print( " Estimate of mean game reward and {:.{prec}%} prediction interval:". format(1 - P.ALPHA, prec=0), reward_mean_PI_text)
def get_compare(sim_output_fair, sim_output_unfair): increase = Stat.DifferenceStatIndp(name='Increase in Reward', x=sim_output_fair.get_rewards(), y_ref=sim_output_unfair.get_rewards()) # estimate and CI estimate_CI = Format.format_estimate_interval( estimate=increase.get_mean(), interval=increase.get_t_CI(alpha=alpha), deci=1) print( "Average increase in reward ($) and {:.{prec}%} confidence interval:". format(1 - alpha, prec=0), estimate_CI)
def outcomes(simulation_output, strategy): # mean and prediction interval text of game reward rewardPImean = Format.format_estimate_interval( estimate=simulation_output.get_mean_total_reward(), interval=simulation_output.get_PI_total_reward(alpha=P.alpha), deci=1) # print game reward statistics print(strategy) print( " Estimate of the gambler's total reward from 10 games and {:.{prec}%} prediction interval:" .format(1 - P.alpha, prec=0), rewardPImean)