python - predict() 缺少 1 个必需的位置参数:sklearn LinearRegression 中的“X”
问题描述
我正在尝试使用简单的线性回归来预测薪水。其中 X 是工作年限,y 是工资。
这是我的代码
# Importing the libraries
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
# Importing the dataset
dataset = pd.read_csv('Salary_Data.csv')
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, 1].values
# Splitting the dataset into the Training set and Test set
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 0)
# Fitting Simple Linear Regression to the Training Set
from sklearn.linear_model import LinearRegression
regressor = LinearRegression
regressor(X_train, y_train)
# Predicting the Test set results
Y_pred = regressor.predict(X_test)
这是我的错误
Y_pred = regressor.predict(X_test)
Traceback (most recent call last):
File "<ipython-input-28-e33267d5ef4e>", line 1, in <module>
Y_pred = regressor.predict(X_test)
TypeError: predict() missing 1 required positional argument: 'X'
我究竟做错了什么?我该如何解决这个问题/错误?
解决方案
# Fitting Simple Linear Regression to the Training Set
from sklearn.linear_model import LinearRegression
regressor = LinearRegression() # <-- you need to instantiate the regressor like so
regressor.fit(X_train, y_train) # <-- you need to call the fit method of the regressor
# Predicting the Test set results
Y_pred = regressor.predict(X_test)
推荐阅读
- python - 如何绘制 Pandas Dataframe 中每一列的空值计数
- java - 应用程序因 StackOverflow 错误而崩溃
- c# - Azure 存储帐户使用托管标识和 C# 进行身份验证
- javascript - React Native Deep Link 传递未定义的参数
- npm - 当包 json 中有私有存储库时,Github 操作显示错误
- sql - 如何在 Oracle 中与 Group By 和 Order By 一起使用?
- r - 在 R shiny 中,为什么我在对 renderUI 进行简单的适配后会收到错误消息?
- matlab - 实时运行 Simulink exe
- c# - WPF 无法正确显示图像
- angular - 如何从`fromEvent`方法获取最后一个事件