我的代码:
models = [dtree,bagging,bagging_wt,rf,rf_wt,dtree_estimator,bagging_estimator,rf_estimator]
acc_train = []
acc_test = []
recall_train = []
recall_test = []
precision_train = []
precision_test = []
for model in models:
j = get_accuracy_score(model,False)
acc_train.append(j[0])
acc_test.append(j[1])
k = get_recall_score(model,False)
recall_train.append(k[0])
recall_test.append(k[1])
l = get_precision_score(model,False)
precision_train.append(l[0])
precision_test.append(l[1])
错误:
TypeError Traceback (most recent call last)
<ipython-input-215-b1cbc190be6f> in <module>
12
13 j = get_accuracy_score(model,False)
---> 14 acc_train.append(j[0])
15 acc_test.append(j[1])
16
TypeError: NoneType' object is not subscriptable
答案 0 :(得分:0)
您需要熟悉 Python 回溯的工作原理。
您需要的所有信息都在异常本身中。
它告诉您该对象在第 14 行和第 15 行中不可下标。您正试图访问不允许它或没有它的对象中的索引(在本例中为 None
)。< /p>
正如@edusanketdk 所说,您的函数 get_accuracy_score
在这里有问题,因为它返回 None
而不是容器对象。