运行train_test_split时报错name 'x_train' is not defined如何解决
问题解决方法
报错根因
- 最常见的是交互式运行环境(Jupyter Notebook/IPython)的单元格执行顺序问题:你单独运行了包含
train_test_split的代码块,没有提前执行前面加载数据集、定义x_train/y_train的代码,导致拆分时找不到前置定义的变量 - 少数情况是前置的数据集读取代码执行报错(比如csv文件路径错误、文件不存在),程序中断没有走到
x_train定义的步骤 - 极个别场景是你在定义
x_train后、拆分代码前,误写了del x_train之类的删除变量逻辑,或者用条件判断包裹了x_train的定义,条件未触发导致变量未生成
修复步骤
- 先从头运行从导入库到
y_test = test_data[:, 0]的所有代码,确认没有抛出文件不存在、索引越界等报错 - 执行
print(x_train.shape)验证变量存在,正常会输出类似(60000, 784)的维度信息 - 再运行
train_test_split的拆分代码即可正常执行
内容的提问来源于stack exchange,提问作者Arvin Pradhan
相关产品推荐
相关产品推荐

