NameError: name statsmodels is not defined

2024-04-25 05:02:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着运行一个脚本,其中我正在做一个叫做Diebold Mariano的统计测试。但是,我遇到了一个与statsmodels相关的名称错误,并且似乎不知道该如何解决这个问题。在

我认为问题与导入有关,因此我尝试导入任何与statsmodels相关的内容,但没有成功。在

这是导致错误的脚本部分。在

for j in range(len(unique_firms)):

    for i in range(j+1,len(unique_firms)):

        firm1=unique_firms[i]
        firm2=unique_firms[j]

        ix_firm1_dft=dft.firm==firm1
        firm1_dft=dft.loc[ix_firm1_dft,['ticker','date','Forecast_error^2']]

        ix_firm2_dft=dft.firm==firm2
        firm2_dft=dft.loc[ix_firm2_dft,['ticker','date','Forecast_error^2']]

        firms_dft=pd.merge(firm1_dft, firm2_dft, how='inner', on=['ticker','date'])

        di=firms_dft['Forecast_error^2_x']-firms_dft['Forecast_error^2_y']

        dbar=di.mean()

        gammas=statsmodels.tsa.stattools.acovf(di, unbiased=True)

        h=int(np.floor(np.power(len(di),1/3)+1))
        denom=np.sqrt(gammas[0]+2*np.sum(gammas[1:h+1]))

        stat=dbar/denom
        pval=2*(1-stats.norm.cdf(np.abs(stat)))
        results[i,j]=stat
        pvals[i,j]=pval
        break
    break

这是我得到的错误,有人能发现问题吗?在

^{pr2}$

Tags: datelen错误nperrortickeruniqueix
2条回答

在终端中运行以下命令:

pip install  upgrade  no-deps statsmodels

然后在你的.py文件中,把这个放在上面:

^{pr2}$

你应该做“导入”statsmodels.api“在python脚本的顶部。 如果您已经这样做了,那么您需要从以下位置下载最新的statsmodel:-https://pypi.org/project/statsmodels/#downloads

相关问题 更多 >