以矩阵形式排列列表到numpy数组

2024-04-29 14:02:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张单子:

rs = list([[(0, 167, 159, 0), (1, 168, 160, 1)], [(0, 167, 159, 1), (1, 168, 160, 0)]])

我想把它排列成矩阵形式的numpy数组,所以我写了下面的代码:

import numpy

rs = list([[(0, 167, 159, 0), (1, 168, 160, 1)], [(0, 167, 159, 1), (1, 168, 160, 0)]])
k = 2
j = 0
h = 0
ars = []
element = list(rs)
ck_dist_m = numpy.array([[]], ndmin = 2)

while j <= k - 1:
    while h <= k - 1:
        rp = numpy.array(element[j][h][3], ndmin = 2)
        ars.append(rp)
        h = h + 1
    else:
        h = 0
        ck_dist_m = numpy.vstack(ars)
    j = j + 1
print ck_dist_m

我希望结果是:

[[0, 1],
 [1, 0]]

但上面的剧本给出了:

[[0]
 [1]
 [1]
 [0]]

如何编辑脚本以得到矩阵形式的结果?你知道吗


Tags: numpydist矩阵数组elementarrayrp形式