返回 TypeError:"线性回归"对象不可调用。此错误的其他答案表示线性回归尚未初始化



我查找了有类似错误的问题,并认为我已经按照步骤用行初始化LinearRegression

linreg_mean_dif = LinearRegression().fit(X_train_dif, y_train_dif)

linreg_lag1 = LinearRegression().fit(X_train_lag1, y_train_lag1)

然而,我仍然被告知LinearRegression是不可调用的。我的代码似乎有什么问题?

import pandas as pd
import numpy as np
import math
from scipy.stats import binom
import timeit
import pandas_market_calendars as mcal
from datetime import datetime
from dateutil import parser as datetime_parser
from dateutil.tz import tzutc,gettz
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
import tree_model as tree

这里的代码从tree_model导入数据并构建reversion_df数据帧

X_var1 = reversion_df['Difference from Mean'].values
y_var1 = reversion_df['Daily % Change'].values
X_var2 = reversion_df['Daily % Change Lag 1'][:len(reversion_df['Daily % Change Lag 1'])-1].values
y_var2 = reversion_df['Daily % Change'][:len(reversion_df['Daily % Change Lag 1'])-1].values
X_train_dif, X_test_dif, y_train_dif, y_test_dif = train_test_split(X_var1, y_var1, random_state = 0)
X_train_lag1, X_test_lag1, y_train_lag1, y_test_lag1 = train_test_split(X_var2, y_var2, random_state = 0)
X_train_dif = X_train_dif.reshape(-1, 1)
X_test_dif = X_test_dif.reshape(-1 , 1)
X_train_lag1 = X_train_lag1.reshape(-1, 1)
X_test_lag1 = X_test_lag1.reshape(-1 , 1)
linreg_mean_dif = LinearRegression().fit(X_train_dif, y_train_dif)
linreg_lag1 = LinearRegression().fit(X_train_lag1, y_train_lag1)
scores_train = (linreg_mean_dif.score(X_train_dif, y_train_dif), linreg_lag1(X_train_lag1, y_train_lag1))

print(scores_train)

您在写linreg_lag1(X_train_lag1, y_train_lag1)的最后一行(就在最后一个print之前(留下了一个拼写错误。用linreg_lag1.score(X_train_lag1, y_train_lag1)(这可能就是你的意思(代替它,你应该是好的

最新更新