Python: объединение данных с весом
У меня есть набор данных с сильным шумом, например
import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.linspace(0,10,N)
y = x + 20 * np.random.rand(N)
Я хочу, чтобы данные для данного бина binsize
(или же binnumber
). Под этим я в основном имею в виду Δx
, Связанные данные должны быть взвешены гауссовой функцией, которую вы можете представить как гауссиан, который расширен по оси Y, взвешивая данные в зависимости от расстояния от значения ожидания µ
, Кроме того, я хочу, чтобы данные дали мне 1σ-error
,
Я знаю о numpy.digitize
а также scipy.stats.binned_statistic
но я не могу применить любой из двух, чтобы получить желаемое биннинг. Возможно, последний должен быть самым простым для использования в этом случае, поскольку он предлагает параметр statistic=<function>
но я открыт для предложений.