用 python 中的随机数替换二维矩阵的元素
Replacing an element of a 2D matrix with a random number in python
我有一个二维矩阵A=[[27 1 63 66 79],[55 20 40 26 68],[42 64 96 27 14]]
。我想用随机数替换每个大于 20 的元素。每次检测到大于 20 的条目时,有没有办法用新的随机数替换它。我不想使用 for 循环并遍历每个条目。
我正在使用这个 A[A>20]= np.random.randint(0,9)
。然而,在这种技术中,每个大于 20 的条目都被替换为一个固定的随机数。
假设你有一个 numpy 数组。您需要生成相同形状的随机数组。
A = np.where(A>20, np.random.randint(0,9, size=A.shape), A)
示例输出:
array([[0, 8, 3, 0, 2],
[1, 4, 7, 5, 1],
[5, 4, 8, 7, 6]])
我有一个二维矩阵A=[[27 1 63 66 79],[55 20 40 26 68],[42 64 96 27 14]]
。我想用随机数替换每个大于 20 的元素。每次检测到大于 20 的条目时,有没有办法用新的随机数替换它。我不想使用 for 循环并遍历每个条目。
我正在使用这个 A[A>20]= np.random.randint(0,9)
。然而,在这种技术中,每个大于 20 的条目都被替换为一个固定的随机数。
假设你有一个 numpy 数组。您需要生成相同形状的随机数组。
A = np.where(A>20, np.random.randint(0,9, size=A.shape), A)
示例输出:
array([[0, 8, 3, 0, 2],
[1, 4, 7, 5, 1],
[5, 4, 8, 7, 6]])