【发布时间】:2020-05-19 20:59:33
【问题描述】:
例如,我在 2D numpy.array 中有一组记录,我想选择第三列中的值等于 10 的所有记录。除了循环遍历数组和构建所选记录的列表?
【问题讨论】:
标签: arrays python-3.x numpy select
例如,我在 2D numpy.array 中有一组记录,我想选择第三列中的值等于 10 的所有记录。除了循环遍历数组和构建所选记录的列表?
【问题讨论】:
标签: arrays python-3.x numpy select
一旦我知道了“过滤器”的概念,我又搜索了一些,并在stackoverflow question 中找到了我正在寻找的答案。
所以在汽车的例子中,过滤器可以写成 df[df[:,1] == '汽车']
【讨论】:
这里我创建了一个 numpy 数组。
print(df)
o/p 为:array([['A', 'car'],['B', 'bike'],['C', 'car'],['D', 'truck'] ], dtype=object)
现在要选择所有带有汽车的行,您可以从数组中过滤该值
df[df == "car"]
o/p 为:array(['car', 'car'], dtype=object)
如果要将其转换为python列表,请将语句包装在列表中,即
list(df[df == "car])
【讨论】: