我正在使用 Mosh 编程进行 Python 课程,并且在某些机器学习代码中出现错误
代码是这样的-& gt;
import pandas as pd
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
music_data = pd.read_csv('music.csv')
X = music_data.drop(columns=['genre'])
y = music_data['genre']
model = DecisionTreeClassifier
X_train, X_test, y_train, y_train = train_test_split(X, y, test_size=0.2)
model.fit(X_train, y_train)
predictions = model.predict(X_test)
score = accuracy_score(y_test, predictions)
score
我收到一个错误,说-& gt;
TypeError Traceback (most recent call last)
<ipython-input-28-0880d58e9ac4> in <module>
10 model = DecisionTreeClassifier
11 X_train, X_test, y_train, y_train = train_test_split(X, y, test_size=0.2)
---> 12 model.fit(X_train, y_train)
13 predictions = model.predict(X_test)
14
TypeError: fit() missing 1 required positional argument: 'y'
我是新来的这些库,我能够解决这个问题我很感激,如果你能帮助我。
错误来自您没有生成模型实例的事实。
model = DecisionTreeClassifier
这是不正确的,因为DecisionTreeClassifier
是一个函数,而不是一个方法。要创建模型,您需要将上面的代码行替换为:
model = DecisionTreeClassifier()
这将创建模型,现在您可以传递数据以适应它并执行所有进一步的操作(,评分等)。
另外,正如 Gavin Wong 指出的那样,使用train_test_split()
时存在错误,因为您定义了y_train
两次。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(26条)