numpy中二元矩阵的有效操作

2024-04-26 07:47:18 发布

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

对于二进制矩阵,我的意思是矩阵中的每个元素都是0或1,为此我使用numpy中的Matrix类。

首先,在numpy中是否有一种特定类型的矩阵,或者我们只是使用一个填充了0和1的矩阵?

第二,如果给定一个Matrix类的维数,创建一个充满0的方阵的最快方法是什么?注意:numpy.zeros((dim, dim))不是我想要的,因为它创建了一个带有float的二维数组0.

第三,我想经常得到和设置矩阵的任意一行。对于get,我可以考虑使用row = my_matrix.A[row_index].tolist(),它将返回给定行的列表表示。对于set,我可以做my_matrix[row_index] = row_list,而row_list是一个与给定行具有相同长度的列表。再次,我想知道他们是否是做这些工作最有效的方法。


Tags: 方法numpy元素类型列表indexmy二进制
1条回答
网友
1楼 · 发布于 2024-04-26 07:47:18

要生成元素可以是0或1的numpy数组,请使用dtype = 'bool'参数:

arr = np.zeros((dim,dim), dtype = 'bool')

或者,要将arr转换为numpy矩阵:

arr = np.matrix(arr)

要访问行:

arr[row_num]

设置行:

arr[row_num] = new_row

是最快的方法。

相关问题 更多 >