numpyasmatrix有时会生成一个列表数组

2024-04-27 00:25:07 发布

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

我使用python的numpy通过numpy.asmatrix公司(). 你知道吗

data_array = [[] for k in range(K)]
while Append data to data_array:
   data_array[k].append(data)
mymatrix = numpy.asmatrix(data_array)

数据数组以K*E结束。当我尝试使用mymatrix进行进一步操作时,结果发现其中一些有效,但其他仍然作为列表。当我打印出来的时候

[[ list([..., ...]), list(..., ...) ]]

有人知道可能的原因吗?你知道吗


Tags: to数据innumpyfordata公司range
2条回答

您应该改变方法,首先创建整个二维数组,然后填充它。像这样:

mymatrix = np.empty((K, N))
for k in range(K):
    mymatrix[k] = data

我猜你在做的事情相当于:

In [5]: np.matrix([[1,2,3],[2,3],[3]])
Out[5]: matrix([[list([1, 2, 3]), list([2, 3]), list([3])]], dtype=object)

相关问题 更多 >