如何在2d numpy数组中设置值?

时间:2018-04-24 22:01:54

标签: python numpy pixel

我正在使用2-d numpy数组,如下所示:

array([[[0, 0, 0, 0],
    [0, 0, 0, 0],
    [0, 0, 0, 0],
    ..., 
    [0, 0, 0, 0],
    [0, 0, 0, 0],
    [0, 0, 0, 0]],

   [[0, 0, 0, 0],
    [0, 0, 0, 0],
    [0, 0, 0, 0],
    ..., 
    [0, 0, 0, 0],
    [0, 0, 0, 0],
    [0, 0, 0, 0]],

   [[0, 0, 0, 0],
    [0, 0, 0, 0],
    [0, 0, 0, 0],
    ..., 
    [0, 0, 0, 0],
    [0, 0, 0, 0],
    [0, 0, 0, 0]]])

所以我在numpy里面有numpy,它有一个包含四个值的列表(RGBA中的像素是特定的)。我想将所有值设置为0.什么是最pythonic的方法呢? 提前致谢!

2 个答案:

答案 0 :(得分:0)

import numpy as np

a = np.random.randn(10, 10)
b = np.zeros_like(a)

b将是与ndarray形状完全相同的0,填充m[:] = 0

答案 1 :(得分:0)

m

会将数组m的所有值设置为零。

如果您需要具有相同形状和数据类型np.zeros_like(m) 的零数组,请使用:

stat_density()