From cd59846b19fa5f7214f32bbe33435cf9e51116af Mon Sep 17 00:00:00 2001 From: dave <dave@dtu.dk> Date: Thu, 30 Jun 2016 15:45:27 +0200 Subject: [PATCH] prepost.misc: add hist_centers2edges convenience method --- wetb/prepost/misc.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/wetb/prepost/misc.py b/wetb/prepost/misc.py index b0bd7498..1d3b3aff 100644 --- a/wetb/prepost/misc.py +++ b/wetb/prepost/misc.py @@ -769,6 +769,13 @@ def check_df_dict(df_dict): """ Verify if the dictionary that needs to be transferred to a Pandas DataFrame makes sense + + Returns + ------- + + collens : dict + Dictionary with df_dict keys as keys, len(df_dict[key]) as column. + In other words: the length of each column (=rows) of the soon to be df. """ collens = {} for col, values in df_dict.items(): @@ -978,6 +985,20 @@ def histfit(hist, bin_edges, xnew): return shape_out, scale_out, pdf_fit +def hist_centers2edges(centers): + """Given the centers of bins, return its edges and bin widths. + """ + + binw_c = centers[1:] - centers[:-1] + edges = np.ndarray((len(centers)+1,)) + edges[0] = centers[0] - binw_c[0]/2.0 + edges[-1] = centers[-1] + binw_c[-1]/2.0 + edges[1:-1] = centers[1:] - binw_c/2.0 + binw_e = edges[1:] - edges[:-1] + + return edges, binw_e + + def df_dict_check_datatypes(df_dict): """ there might be a mix of strings and numbers now, see if we can have -- GitLab