Numpy数组创建报错:TypeError参数数量异常问题求助
问题解决
错误原因分析
- numpy数组创建格式错误:
np.array()要求接收一个单一的可迭代对象(比如嵌套列表)作为参数,你现在把4个子列表直接作为独立参数传入,导致参数数量超出函数预期,触发TypeError。 - 变量名大小写不匹配:你定义的数组变量是
Input_data(首字母大写),但后续调用时用了input_data(全小写),这会引发NameError(当前报错是格式问题导致的前置错误,后续执行到这一步也会出问题)。
修正后的代码
import numpy as np from sklearn import preprocessing # 将所有子列表包裹在一个大列表中,作为np.array()的单个参数 input_data = np.array([[2.1, -1.9, 5.5], [-1.5, 2.4, 3.5], [0.5, -7.9, 5.6], [5.9, 2.3, -5.8]]) data_binarized = preprocessing.Binarizer(threshold=0.5).transform(input_data) print("\nBinarized data:\n", data_binarized)
关键修正点说明
- 调整数组创建格式:把原本独立的4个子列表,全部放入一个外层大列表中,让
np.array()能正确识别这是一个二维数组的结构。 - 统一变量名:将定义时的
Input_data改为全小写的input_data,保证后续调用时变量名一致,避免未定义变量的错误。
内容的提问来源于stack exchange,提问作者Armybed
相关产品推荐
相关产品推荐

