Поскольку numpy.convolve довольно медленный, тем, кто нуждается в быстродействующем решении, может быть проще понять подход cumsum . Вот код:
cumsum_vec = numpy.cumsum(numpy.insert(data, 0, 0))
ma_vec = (cumsum_vec[window_width:] - cumsum_vec[:-window_width]) / window_width
, где data содержит ваши данные, а ma_vec будет содержать скользящие средние window_width длина
В среднем, cumsum примерно в 30-40 раз быстрее, чем свертывает .