elif config['target'] == 'spectra_number': target = spc[config['spectra_number'], :].reshape(1, -1) else: target = config['target'] xCS, ints, ind, target = icoshift(target, spc, inter=intervals, n=maximum_shift, coshift_preprocessing=config['coshift_preprocessing'], coshift_preprocessing_max_shift=config['coshift_preprocessing_max_shift'], average2_multiplier=config['average2_multiplier'], fill_with_previous=config['fill_with_previous'], ) output_data = input_data.copy() output_data[:] = xCS # Generate simple result figure (using pathomx libs) from pathomx.figures import spectra, difference regions = [] ymin, ymax = np.min(spc.flatten()), np.max(spc.flatten()) for r in config['selected_data_regions']: x0, y0, x1, y1 = r[1:] regions.append((x0, ymax, x1, ymin)) View = spectra(output_data, styles=styles, regions=regions) Difference = difference(input_data, output_data) spc = None
output_data = pd.DataFrame(np.zeros((input_data.shape[0], number_of_bins))) for n, d in enumerate(input_data.values): binned_data = np.histogram(scale, bins=bins, weights=d) binned_num = np.histogram(scale, bins=bins) # Number of data points that ended up contributing to each bin output_data.ix[n, :] = binned_data[0] / binned_num[0] # Mean new_scale = [float(x) for x in binned_data[1][:-1]] # Binning is low->high only, if the resulting scale is reversed to the source data flip it and the data original_dir = (scale[0] - scale[1]) / abs((scale[0] - scale[1])) new_dir = (new_scale[0] - new_scale[1]) / abs((new_scale[0] - new_scale[1])) if original_dir != new_dir: # Flip horizontal new_scale = new_scale[::-1] for n, d in enumerate(output_data.values): output_data.ix[n, :] = np.fliplr(np.reshape(d, (-1, number_of_bins))) output_data.columns = pd.Index(new_scale, name='Scales') output_data.index = input_data.index output_data.dropna(axis=1, inplace=True) # Generate simple result figure (using pathomx libs) from pathomx.figures import spectra, difference View = spectra(output_data, styles=styles) Difference = difference(input_data, output_data, styles=styles)