相关疑难解决方法(0)

从ND到1D阵列

说我有一个数组a:

a = np.array([[1,2,3], [4,5,6]])

array([[1, 2, 3],
       [4, 5, 6]])
Run Code Online (Sandbox Code Playgroud)

我想将其转换为1D数组(即列向量):

b = np.reshape(a, (1,np.product(a.shape)))
Run Code Online (Sandbox Code Playgroud)

但这会回来

array([[1, 2, 3, 4, 5, 6]])
Run Code Online (Sandbox Code Playgroud)

这与以下不一样:

array([1, 2, 3, 4, 5, 6])
Run Code Online (Sandbox Code Playgroud)

我可以将此数组的第一个元素手动转换为1D数组:

b = np.reshape(a, (1,np.product(a.shape)))[0]
Run Code Online (Sandbox Code Playgroud)

但是这需要我知道原始数组有多少维度(并且在处理更高维度时连接[0])

是否存在从任意ndarray获取列/行向量的独立于维度的方法?

python numpy

115
推荐指数
4
解决办法
24万
查看次数

标签 统计

numpy ×1

python ×1