diff --git a/analysis.py b/analysis.py index b3a7076..ff0cf9e 100644 --- a/analysis.py +++ b/analysis.py @@ -42,6 +42,19 @@ def main(): pass +def get_fit_info(folder): + fits_info = {} + + for item in os.listdir(folder): + cell_folder = os.path.join(folder, item) + + results = get_best_fit(cell_folder, use_comparable_error=True) + cell_behaviour, model_behaviour = results.get_behaviour_values() + fits_info[item] = [results.get_final_parameters(), model_behaviour, cell_behaviour] + + return fits_info + + def calculate_percent_errors(fits_info): errors = {} @@ -129,19 +142,6 @@ def parameter_correlations(fits_info): return labels, corr_values, corrected_p_values -def get_fit_info(folder): - fits_info = {} - - for item in os.listdir(folder): - cell_folder = os.path.join(folder, item) - - results = get_best_fit(cell_folder) - cell_behaviour, model_behaviour = results.get_behaviour_values() - fits_info[item] = [results.get_final_parameters(), model_behaviour, cell_behaviour] - - return fits_info - - def create_correlation_plot(labels, correlations, p_values): cleaned_cors = np.zeros(correlations.shape) @@ -181,7 +181,8 @@ def create_correlation_plot(labels, correlations, p_values): def create_boxplots(errors): labels = ["{}_n:{}".format(k, len(errors[k])) for k in sorted(errors.keys())] - + for k in sorted(errors.keys()): + print("{}: median %-error: {:.2f}".format(k, np.median(errors[k]))) y_values = [errors[k] for k in sorted(errors.keys())] plt.boxplot(y_values)