在numpy recarray中删除一行
有没有简单的方法可以删除一个包含特定值的行,比如在一个记录数组(recarray)中?假设我有下面这个数组,
a=numpy.array([(1.0, 2.0, 3.0), (4.0, 5.0, 10.0),(1.0,10.0,4.0)],
dtype=[('A', '<f8'), ('B', '<f8'), ('C', '<f8')])
我想把所有B列中值为10的行都删除掉,这样输出结果就变成了
([(1.0, 2.0, 3.0), (4.0, 5.0, 10.0)],
dtype=[('A', '<f8'), ('B', '<f8'), ('C', '<f8')])
有没有快速的方法可以做到这一点呢?
1 个回答
3
只需要从原始数组中提取出相关的行:
new_a = a[a["B"]!=10.0]