ValueError:使用序列设置数组元素
使用 NumPy 数组时,偶尔会遇到错误“ValueError:设置数组具有序列的元素。”出现此问题有两个潜在原因:
原因 1:创建锯齿状数组
NumPy 数组始终需要一致的维度。尝试从元素长度不同的列表创建数组将触发此错误:
np.array([[1, 2], [2, 3, 4]]) # Wrong! np.array([[1, 2], [2, [3, 4]]]) # Wrong!
在这些情况下,输入列表无法表示为具有统一形状的多维数组。
原因 2:元素类型不兼容
使用特定元素声明数组时数据类型(例如,float),您必须确保所有元素的类型相同。混合不同类型,例如字符串和浮点数,将生成错误:
np.array([1.2, "abc"], dtype=float) # Wrong!
如果您需要包含不同类型元素的数组,请考虑使用对象数据类型:
np.array([1.2, "abc"], dtype=object)
以上是ValueError:使用序列设置数组元素:为什么会出现此 NumPy 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!