如何使用statsmodel
- 安装statsmodel
- 使用easy_install或pip安装statsmodels
easy_install -U statsmodels
pip install -U statsmodels
- 使用源代码安装statsmodels
- 使用easy_install或pip安装statsmodels
最小二乘法拟合
- 加载数据
import statsmodels.api data = statsmodels.api.datasets.copper.load_pandas()
- 拟合数据
x, y = data.exog, data.endog fit = statsmodels.api.OLS(y, x).fit()
import statsmodels.api data = statsmodels.api.datasets.copper.load_pandas() x, y = data.exog, data.endog fit = statsmodels.api.OLS(y, x).fit() print "Fit params", fit.params print print "Summary" print print fit.summary()
- 加载数据
重采样时间序列数据
- 创建一个日期时间索引对象
dt_idx = pandas.DatetimeIndex(quotes.date)
- 创建DataFrame对象
df = pandas.DataFrame(quotes.close, index = dt_idx, columns = [symbol])
- 重采样
resampled = df.resample('M', how=numpy.mean)
- 绘图
df.plot() resampled.plot() show()
import pandas from matplotlib.pyplot import show, legend from datetime import datetime from matplotlib import finance import numpy start = datetime(2011, 01, 01) end = datetime(2012, 01, 01) symbol = "AAPL" quotes = finance.quotes_historical_yahoo_ochl(symbol, start, end, asobject = True) dt_idx = pandas.DatetimeIndex(quotes.date) df = pandas.DataFrame(quotes.close, index = dt_idx, columns = [symbol]) resampled = df.resample('M', how=numpy.mean) print resampled df.plot() resampled.plot() show()
- 创建一个日期时间索引对象
什么是statsmodel
statsmodels的发行版有很多的范例数据集。