这是我为ML制作模型而编写的代码
import pandas as pd
import numpy as np
import sklearn
from sklearn import linear_model
from sklearn.utils import shuffle
data = pd.read_csv("student-mat.csv", sep=";")
data = [["G1", "G2", "G3", "studytime", "failures", "absences"]]
predict = "G3"
X = np.array(data.drop([predict], 1))
y = np.array(data[predict])
x_train, x_test, y_train, y_test = sklearn.model_selection.train_test_split(X, y, test_size = 0.1)
linear = linear_model.LinearRegression()
linear.fit(x_train, y_train)
acc = linear.score(x_test, y_test)
print(acc)
linear.fit(x_train, y_train)
acc = linear.score(x_test, y_test)
print(acc)
这就是我遇到的错误:
Traceback (most recent call last):
File "C:/Users/WORK/Desktop/ML_AI/Projects/ML_AI1/Regression Working File.py", line 13, in <module>
X = np.array(data.drop([predict], 1))
AttributeError: 'list' object has no attribute 'drop'
Process finished with exit code 1
我哪里出了问题,我应该改变什么?
是否要删除“预测”以进行估计
这就是放弃“预测”的答案。您应该使用“删除”来删除“预测”的值
运行此代码时,可以获得以下值
试着改变
进入
pd.DataFrame.drop如果未指定轴,则尝试删除名为“G3”的索引而不是列
非常感谢我刚刚调整了这个
为此:
这解决了我的问题,谢谢你的回复
相关问题 更多 >
编程相关推荐