【发布时间】:2017-06-22 18:58:18
【问题描述】:
对于我的评估,我想运行一个滚动 1000 窗口 OLS regression estimation 在此 URL 中找到的数据集:
https://drive.google.com/open?id=0B2Iv8dfU4fTUa3dPYW5tejA0bzg
使用以下Python 脚本。
# /usr/bin/python -tt
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from statsmodels.formula.api import ols
df = pd.read_csv('estimated.csv', names=('x','y'))
model = pd.stats.ols.MovingOLS(y=df.Y, x=df[['y']],
window_type='rolling', window=1000, intercept=True)
df['Y_hat'] = model.y_predict
但是,当我运行 Python 脚本时,我收到此错误:AttributeError: module 'pandas.stats' has no attribute 'ols'。这个错误可能来自我正在使用的版本吗?我的Linux节点上安装的pandas的版本是0.20.2
【问题讨论】:
-
有趣。我使用的是 0.17 版,它在
dir中。我猜他们重组了。 -
它现在可能带有另一个模块。我也在研究它,不要回滚,遗憾的是文档没有明确说明它是从哪里导入的
-
取自statsmodels.org/dev/importpaths.html#import-examples的
from statsmodels.regression.linear_model import OLS怎么样 -
@downshift 你可能在正确的路线上。看起来它在 pandas github.com/pandas-dev/pandas/… 中已被弃用
-
对,我认为从 v0.20.0 开始 - github.com/pandas-dev/pandas/blob/…
标签: python python-3.x pandas linear-regression statsmodels