私信  •  关注

jtweeder

jtweeder 最近创建的主题
jtweeder 最近回复了
5 年前
回复了 jtweeder 创建的主题 » 基于python-statsmodel的多元线性回归

使用来自 github question 在patsy存储库中,这将是使lag列正常工作的方法。

import statsmodels.formula.api as smf
import pandas as pd
import numpy as np

rando = lambda x: np.random.randint(low=1, high=100, size=x)

df = pd.DataFrame(data={'volume_1': rando(62), 'price_1': rando(62)})

def lag(x, n):
    if n == 0:
        return x
    if isinstance(x,pd.Series):
        return x.shift(n)

    x = x.astype('float')
    x[n:] = x[0:-n]
    x[:n] = np.nan
    return x

temp = smf.ols(formula='np.log(volume_1) ~ np.log(price_1) + np.log(lag(volume_1,1))', 
               data=df[11:62])