Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python statsmodels在simulate()中自定义参数排序_Python_Statsmodels - Fatal编程技术网

Python statsmodels在simulate()中自定义参数排序

Python statsmodels在simulate()中自定义参数排序,python,statsmodels,Python,Statsmodels,在statsmodels中,如何定义输入参数params的元素顺序 我们可以假设顺序对应于所创建对象的属性参数名给出的顺序,但情况似乎并非如此。见下面的例子 将statsmodels导入为statsmodels 将statsmodels.api作为sm导入 作为pd进口熊猫 将numpy作为np导入 endog=pd.DataFrame({“y”:[np.nan,np.nan],“y2”:[np.nan,np.nan]},索引=[0,1]) statsmodels.\uuuu版本__ >>>>>

在statsmodels中,如何定义输入参数
params
的元素顺序

我们可以假设顺序对应于所创建对象的属性
参数名
给出的顺序,但情况似乎并非如此。见下面的例子

将statsmodels导入为statsmodels
将statsmodels.api作为sm导入
作为pd进口熊猫
将numpy作为np导入
endog=pd.DataFrame({“y”:[np.nan,np.nan],“y2”:[np.nan,np.nan]},索引=[0,1])
statsmodels.\uuuu版本__
>>>>>>>>>
'0.11.1'
示例1:具有截距和漂移的两个变量VAR(1),除截距设置为1外,所有参数均固定为0。产生预期结果

params=[1,0,0,0,0,0,0,0,0,0,0]
mod1=sm.tsa.VARMAX(endog,order=(1,0),trend=[1,1],trend\u offset=0)
打印('\n'.join('{}:{}.format(*k)表示zip中的k(mod1.param_names,params)))
打印(mod1.simulate(params=params,nsimulations=5,初始状态=[0,0]))
>>>>>>>>>
拦截。y:1
0.y2:0
漂移y:0
0.y2:0
L1.y.y:0
L1.y2.y:0
L1.y.y2:0
L1.y2.y2:0
sqrt.var.y:0
sqrt.cov.y.y2:0
sqrt.var.y2:0
y y2
0  0.0  0.0
1  1.0  0.0
2  1.0  0.0
3  1.0  0.0
4  1.0  0.0 
示例2:与示例1相同,但现在变量
y
的截距设置为0,变量
y2
的截距设置为1。似乎
params
中的第二个元素实际上控制
y
的漂移参数,而不是
y2
的截距项,而不是产生预期结果。这与
mod2.param_names
给出的参数顺序相矛盾

params=[0,1,0,0,0,0,0,0,0,0,0]
mod2=sm.tsa.VARMAX(endog,order=(1,0),trend=[1,1],trend\u offset=0)
打印('\n'.join('{}:{}.format(*k)表示zip中的k(mod2.param_names,params)))
打印(mod2.simulate(params=params,nsimulations=5,初始状态=[0,0]))
>>>>>>>>>
拦截。y:0
1.y2:1
漂移y:0
0.y2:0
L1.y.y:0
L1.y2.y:0
L1.y.y2:0
L1.y2.y2:0
sqrt.var.y:0
sqrt.cov.y.y2:0
sqrt.var.y2:0
y y2
0  0.0  0.0
1  1.0  0.0
2  2.0  0.0
3  3.0  0.0
4  4.0  0.0

这看起来像是Statsmodels在参数名称排序方面的一个bug。

谢谢!将在statsmodels github页面报告此问题。事实上,它是一个bug。改正