You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

监督式逻辑回归Python代码报错求助:TypeError: 'list' object is not callable

排查Logistic回归代码中的TypeError及其他问题

嘿,我来帮你一步步揪出代码里的问题!你遇到的TypeError: 'list' object is not callable是典型的语法误用,咱们逐个拆解解决:

1. 触发TypeError的核心原因

看你最后一行代码:

predicted == y_testarray([ True, True, True, True, True, True, True, True,True, True, True, True, True, True, True], dtype=bool)

你之前已经把y_testarray定义成了一个列表,结果这里却把它当成函数加括号调用了——列表是不能像函数那样执行的,这就直接触发了“列表不可调用”的错误。而且这行逻辑本身也不对,你应该是想对比predicted和y_testarray,正确写法是直接写:

predicted == y_testarray

2. 列表定义的冗余括号

你定义predictedarray和y_testarray时多套了一层括号:

predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
y_testarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])

虽然Python不会报错,但完全没必要,规范的写法是直接去掉外层括号:

predictedarray = [0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]
y_testarray = [0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]

3. sklearn版本兼容问题

你用的cross_validation.train_test_split在较新的sklearn版本里已经被迁移到model_selection模块下了。虽然你用的Spyder 3.6环境可能还支持旧写法,但为了避免后续版本冲突,建议替换成:

from sklearn.model_selection import train_test_split

然后调用时直接用train_test_split(...)即可,不用再加cross_validation.前缀。

4. 修正后的完整可运行代码

把所有问题修复后,完整代码如下:

from sklearn.datasets import load_iris
from sklearn import linear_model
from sklearn.model_selection import train_test_split
from sklearn import metrics

# 加载数据集
iris = load_iris()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.10, random_state=111)
# 初始化并训练逻辑回归模型
logClassifier = linear_model.LogisticRegression(random_state=111)
logClassifier.fit(X_train, y_train)
# 生成测试集预测结果
predicted = logClassifier.predict(X_test)

# 定义手动对比数组(修正括号)
predictedarray = [0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]
y_testarray = [0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]

# 计算模型准确率
accuracy = metrics.accuracy_score(y_test, predicted)
print(f"模型在测试集上的准确率: {accuracy}")

# 正确对比预测结果与手动数组
comparison_result = predicted == y_testarray
print(f"预测结果与手动数组的匹配情况: {comparison_result}")

运行这段代码应该就能正常输出结果,不会再触发TypeError啦!

内容的提问来源于stack exchange,提问作者Muhammad Ahmed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:05:02