如何拆分NumPy数组维度?将二维数组转一维及解决冗余值问题
NumPy列向量转一维数组的实现方法
先说说你原来代码的问题
np.empty(1)创建的是未初始化的数组,里面的数值是内存里遗留的随机垃圾值,之后你用np.append往里面加元素,这个初始的随机值就被保留在数组开头了,这就是为啥会多出个奇怪的小数值。
正确的转换方法有这几种:
- 用
flatten()生成新的一维数组:
import numpy as np arr = np.array([[1], [2], [3]]) arr2 = arr.flatten()
- 用
ravel()返回原数组的视图(内存更高效):
arr2 = arr.ravel()
- 用
reshape(-1)让NumPy自动推导一维长度:
arr2 = arr.reshape(-1)
- 直接索引列(适合你的3行1列数组):
arr2 = arr[:, 0]
内容的提问来源于stack exchange,提问作者Vesna
相关产品推荐
相关产品推荐

