在Google Colab中创建数组时遭遇TypeError错误求助
问题解决:TypeError: 'module' object is not callable
错误原因
- 你导入
array模块后直接用array()调用,这实际是在调用整个模块而非模块内的array类。就算改成array.array()也没用,因为这个类只支持一维数组,而你的data是二维结构,会触发新的错误。 - 做机器学习数据集,用
numpy是更合适的选择,它支持多维数组,且和sklearn的train_test_split适配性更好。
修正后的代码
# 导入必要库 import numpy as np from sklearn.model_selection import train_test_split # 创建符合要求的数据集字典 dataset = { 'data': np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20]]), 'target': np.array([101, 102, 103, 104]) } # 拆分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split( dataset['data'], dataset['target'], test_size=0.25, # 测试集占比25% random_state=42 # 固定随机种子,保证拆分结果可复现 ) # 打印验证结果 print("训练集特征:\n", X_train) print("\n训练集标签:\n", y_train) print("\n测试集特征:\n", X_test) print("\n测试集标签:\n", y_test)
补充说明
np.array()可以直接生成二维数组,完美匹配你的数据结构需求。train_test_split会自动按比例拆分特征矩阵和标签数组,参数可根据需求调整(比如修改test_size改变测试集占比)。
内容的提问来源于stack exchange,提问作者karoloso
相关产品推荐
相关产品推荐

