Усреднение по всем n элементам массива numpy
У меня есть массив NumPy. Я хочу создать новый массив, который является средним по каждому последовательному триплету элементов. Таким образом, новый массив будет на треть меньше размера оригинала.
В качестве примера:
np.array([1,2,3,1,2,3,1,2,3])
должен вернуть массив:
np.array([2,2,2])
Кто-нибудь может предложить эффективный способ сделать это? Я рисую заготовки.
Ответы
Ответ 1
Если ваш массив arr
имеет длину, делящуюся на 3:
np.mean(arr.reshape(-1, 3), axis=1)
Преобразование в массив с более высокой размерностью, а затем выполнение какой-либо операции сокращения в одном из дополнительных измерений является одним из основных способов программирования numpy.