首页 > 解决方案 > 有没有一种快速的方法可以从 python 中的另一个矩阵创建一个布尔矩阵?

问题描述

我想知道是否有更快的方法,而不是 O(n^2),从整数 nxn 矩阵创建布尔矩阵。

例子:

给出的是矩阵:

matrix_int = [[-5,-8,6],[4,6,-9],[7,8,9]]

改造后我想要这个:

matrix_bool = [[False,False,True],[True,True,False],[True,True,True]]

所以所有负值都应该是False,所有正值都应该是True

蛮力方式是 O(n^2),这对我来说太慢了,你也知道如何让它更快吗?

标签: pythonnumpy

解决方案


matrix_int = [[-5,-8,6],[4,6,-9],[7,8,9]]

matrix_int = np.array(matrix_int)
bool_mat = matrix_int > 0

结果:

array([[False, False,  True],
       [ True,  True, False],
       [ True,  True,  True]])

推荐阅读