如何获取第二列等于4或6的行?

a = np.array(np.mat('1 2; 3 4; 5 6; 7 4'))
b = [4,6]

显然,这不起作用:
c = a[a[:,1] in b]

最佳答案

您可以使用itertools.ifilter:

from itertools import ifilter
c = np.array([ e for e in ifilter(lambda x: x[1] in b, a) ])
>> array([[3,4],
          [5,6],
          [7,4]])

关于python - numpy:如何基于一堆条件选择行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19111450/

10-13 09:52