експоненциална подвижна сума в numpy / scipy?

Търся функция за изчисляване на експоненциална подвижна сума в numpy или scipy. Искам да избягвам използването на цикли на Python, защото те са наистина бавни.

за да бъда конкретен, имам две серии A[] и T[]. T[i] е клеймото за време на стойност A[i]. Определям период на полуразпад тау. За дадено време t, експоненциалната движеща се сума е сборът от всички стойности A[i], които се случват преди t, с тегло exp(-(t-T[i])/tau) за всеки A[i].

Благодаря много!


person Vendetta    schedule 08.11.2011    source източник
comment
Разгледайте pytseries.sourceforge.net/contents.html.   -  person Tarantula    schedule 08.11.2011


Отговори (2)


Разгледайте numpy.convolve. Експоненциалната подвижна сума е конволюция.

person Michael J. Barber    schedule 08.11.2011

Можете да опитате да подобрите циклите на Python, като правите добри „практики“ (като избягване на точки).

Може би можете да кодирате функцията си в C (в "numpy библиотека") и да я извикате от python.

person ykatchou    schedule 08.11.2011