1

在 python 中,我有一个 2x1 数组

a=array([[ 0,  4,  8, 12, 16],
     [ 0,  8, 16, 24, 32]])

当我提取列向量时

c=a[:,1]

C 变成一个 1x2 数组,我希望它是一个 2x1 数组。应用转置似乎并不能解决问题。

有什么建议么?

谢谢

4

3 回答 3

8

c=a[:,1]

c就是现在:

array([4, 8])

即一维数组(所以甚至不是1x2)。

如果你想要一个 2x1 数组,试试这个:

c = a[:,1:2]

它会变成:

array([[4],
       [8]])
于 2011-05-23T10:50:31.970 回答
1

你试过c.reshape(2,1)吗?

于 2011-05-23T10:42:13.330 回答
1

其他选项包括:

import numpy as np
c = a[:,1]

然后使用以下命令访问具有所需形状的数据:

c[:,np.newaxis]

或者

c[:,None]
于 2011-05-23T11:11:08.390 回答