【发布时间】:2018-02-28 22:13:37
【问题描述】:
我有:
np.random.seed(123)
def v_t(var_v, T):
v_t_ = np.zeros([T,1])
v_t_[1:T] = (var_v ** 0.5) * np.random.randn(len(v_t_) - 1, 1)
return v_t_
def s_t(rho, T):
v_t_ = v_t(var_v, T)
s_t_ = np.zeros([T,1])
s_t_[0] = 0
for t in range(1,T):
s_t_[t] = rho *s_t_[t-1] + v_t_[t]
return s_t_
但是每次我调用其中一个值时,即
s_t(rho, T) "or" v_t(var_v, T)
显示正确的值。但紧接着,当我调用另一个值时,值是错误的。 (可能是由于一些时间序列效应。)在我清除命名空间后,当我以镜像顺序调用函数时,情况也是如此。如何在不重置命名空间的情况下为每个调用显示正确的值???
很高兴收到您的来信!干杯,托比亚斯
【问题讨论】:
-
不要将变量命名为与函数相同的名称。
-
我的代码中有示例吗?
-
s_t和v_t -
也许是 s_t_ = = np.zeros([T,1]) 而不是 s_t ?
-
好的,我试试,谢谢!
标签: python function time-series call