Так что, если я делаю этоСумма SymPy выражение над NumPy массива
import sympy as sp
import numpy as np
u = np.random.uniform(0, 1, 10)
w, k = sp.symbols('w k')
l = sum(1 - sp.log(k + w) + sp.exp(k + w) for k in u)
Я получаю то, что я хочу (символическую сумму по u
в зависимости от w
). Тем не менее, было бы гораздо полезнее написать
f = 1 - sp.log(k + w) + sp.exp(k + w)
l = sum(f for k in u)
Но тогда я получаю
10*exp(k + w) - 10*log(k + w) + 10
Что происходит? Есть ли способ получить сумму, которую я хочу? (Sympy имеет несколько способов суммирования по целым числам, но я не нашел их для массивов) (Версия: Python 2.7.6, NumPy 1.8.1, SymPy 0.7.4.1)
Только то, что мне нужно. Благодаря! – Mauricio
@Mauricio отлично ... так как вы новичок здесь: не забывайте, что вы также можете поддержать ответы и вопросы, которые вы хотели бы сделать;);) –