如何对多个列进行numpy结构化数组的掩码处理?
我有一个numpy的结构化数组,它的类型大概是这样的:
A = numpy.empty(10, dtype=([('segment', '<i8'), ('material', '<i8'), ('rxN', '<i8')]))
我知道我可以创建一个掩码,比如:
A[A['segment'] == 42] = ...
有没有办法在多个列上创建一个掩码呢?比如(我知道这样写不行,但我希望它能这样工作):
A[A['segment'] == 42 and A['material'] == 5] = ...
1 个回答
12
你可以用 &
这个符号来代替 and
:
A[(A['segment'] == 42) & (A['material'] == 5)]
注意,这样做需要额外加上括号。