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

已导入sklearn库仍报'name sklearn is not defined'错误的排查

问题原因与解决办法

错误原因

你只导入了sklearn的子模块(linear_model、utils),但代码里直接使用sklearn.model_selection.train_test_split调用函数——当前代码的命名空间里并没有sklearn这个顶级模块的引用,只有你显式导入的子模块,所以触发了NameError。

解决方法

有两种可行的修复方式:

方法一:直接导入目标函数

在代码开头的导入部分添加一行:

from sklearn.model_selection import train_test_split

之后调用时直接使用函数名即可:

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.1)

方法二:导入整个sklearn模块

修改导入语句,先导入顶级模块:

import sklearn
from sklearn import linear_model
from sklearn.utils import shuffle

这样就能保留原代码中sklearn.model_selection.train_test_split的调用方式。

推荐使用方法一,更贴合Python的导入规范,能避免引入冗余模块,减少命名空间冲突。

内容的提问来源于stack exchange,提问作者Fionn Lenaghan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 21:40:56