рекурсивная векторизация Python с помощью временных рядов

У меня есть Timeseries (ы), которые должны быть обработаны рекурсивно, чтобы получить результат timeseries (res). Вот мой пример кода:

res=s.copy()*0  
res[1]=k # k is a constant  
for i in range(2,len(s)):  
    res[i]=c1*(s[i]+s[i-1])/2 +c2*res[i-1]+c3*res[i-2]

где c1, c2, c3 - постоянные. Это работает правильно, но я хотел бы использовать векторизацию, и я попытался с:

res[2:]=c1*(s[2:]+s[1:-1])/2+c2*res[1:-1]+c3*res[0:-2]  

но я получаю «ValueError: операнды не могут быть переданы вместе с фигурами (1016) (1018)»
если я попробую с

res=c1*(s[2:]+s[1:-1])/2+c2*res[1:-1]+c3*res[0:-2]  

не выдает никакой ошибки, но я не получаю правильного результата, потому что res [0] и res [1] должны быть инициализированы до того, как будут выполнены вычисления. Есть ли способ обработать его с помощью векторизации?
Любая помощь будет оценена, спасибо!

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

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