嗨,我的代码有点问题,我对python有点陌生,但我对类和对象有一些了解。你知道吗
import random
class ScrappyKNN():
def fit(self,X_train,Y_train):
self.X_train = X_train
self.Y_train = Y_train
def predict(self, X_test,a):
predictions = []
for row in X_test:
label = random.choice(self.Y_train)
predictions.append(label)
return predictions
import numpy as np
from sklearn import datasets
iris = datasets.load_iris()
X = iris.data
Y = iris.target
from sklearn.model_selection import train_test_split
X_train,X_test,Y_train,Y_test = train_test_split(X,Y,test_size = .5)
#from sklearn.neighbours import KNeighboursClassifier
my_classifier = ScrappyKNN()
my_classifier = my_classifier.fit(X_train,Y_train)
predictions = my_classifier.predict(X_test)
from sklearn.metrics import accuracy_score
print(accuracy_score(Y_test, predictions))
但我运行它时出错了:
Traceback (most recent call last):
File "pipelineKNeighbours.py", line 30, in <module>
predictions = my_classifier.predict(X_test)
AttributeError: 'NoneType' object has no attribute 'predict'
我做错什么了?你知道吗
线路
将我的\u分类器重新定义为fit()的返回值,该值为None,因此我的\u分类器不再指向scrapyknn类的实例,而是指向一个NoneType对象-因此,出现了错误。你知道吗
相关问题 更多 >
编程相关推荐