我正在寻找函数来计算numpy或scipy中的指数移动和。我想避免使用python循环,因为它们非常慢。numpy/scipy中的指数移动总和?
要具体说明,我有两个系列A []和T []。 T [i]是值A [i]的时间戳。我定义了一个半衰期τ。对于给定时间t,指数移动总和是在t之前发生的所有值A [i]的总和,对于每个A [i]具有权重exp( - (t-T [i])/ tau)。
非常感谢!
我正在寻找函数来计算numpy或scipy中的指数移动和。我想避免使用python循环,因为它们非常慢。numpy/scipy中的指数移动总和?
要具体说明,我有两个系列A []和T []。 T [i]是值A [i]的时间戳。我定义了一个半衰期τ。对于给定时间t,指数移动总和是在t之前发生的所有值A [i]的总和,对于每个A [i]具有权重exp( - (t-T [i])/ tau)。
非常感谢!
看看numpy.convolve。指数移动和是一个卷积。
你可以尝试通过做好“实践”(如避免点)来改进python循环。也许你可以在C中编写函数(进入“numpy库”)并从python中调用它。
看看http://pytseries.sourceforge.net/contents.html。 – Tarantula