обобщенные кумулятивные функции в NumPy / SciPy?

Есть ли функция в numpy или scipy (или в какой-то другой библиотеке), которая обобщает идею cumsum и cumprod для произвольной функции. Например, рассмотрим (теоретическую) функцию

cumf( func, array) 

func - это функция, которая принимает два числа с плавающей точкой и возвращает число с плавающей точкой. Частные случаи

lambda x,y: x+y 

а также

lambda x,y: x*y 

являются cumsum и cumprod соответственно. Например, если

func = lambda x,prev_x: x^2*prev_x 

и я применяю это к:

cumf(func, np.array( 1, 2, 3) )

мне бы хотелось

np.array( 1, 4, 9*4 )

Ответы на вопрос(2)

Ваш ответ на вопрос