a=[1,2,3,4,5,6] 怎样可以读取为这样的 numpy 数组: array([[1, 3, 5], [2, 4, 6]]) ?
1
Merlini 2020-05-16 22:18:16 +08:00
np.array(a).reshape(2,3)
有空多看文档 |
3
Merlini 2020-05-16 22:27:00 +08:00
@oldbird #2 噢噢 不好意思看错了 这样的话就更简单了 不用 numpy
a[::2] 和 a[1::2]就行, 前者是[1,3,5],后者是[2,4,6] |
4
oldbird OP @Merlini 谢谢,用 numpy 有方法吗? 实际情况是将图像读取为 numpy 数组类型,然后按第一列、第二列……的顺序将所有像素读取并处理,结果为一维数组,想还原成原影像的尺寸。
|
5
yiningyang1228 2020-05-16 22:42:39 +08:00
接楼上,然后再 stack 起来就行了,np.vstack((a[::2], a[1::2]))
|
6
Xs0ul 2020-05-16 22:45:45 +08:00
np.array(a).reshape(3,2).T
|
7
Merlini 2020-05-16 22:50:50 +08:00
@oldbird #4
那我们假设是个二维数组 test = numpy.array([[1, 2], [3, 4], [5, 6]]) >>> test[:,0] array([1, 3, 5]) 这样就读取了第一列的值。 这是你需要的吗? |
8
c0xt30a 2020-05-16 22:56:10 +08:00
transpose 一下就可以了
``` np.array( a ).reshape( (3, 2) ).T ``` |
9
necomancer 2020-05-16 22:57:10 +08:00
np.arange(1,7).reshape(3,2).T
|
10
dongxiao 2020-05-17 22:24:41 +08:00
np.array(a).reshape((2, 3), order="F")
|