我有一个多维的numpy数组,我只想在数组的每一列中使用特定的值。如果vlaue与我要过滤的内容不匹配,我想删除整行。程式码片段:
array = ([4, 78.01, 65.00, 98.00],
[5, 23.08, 87.68, 65.3],
[6, 45.98, 56.54, 98.76],
[7, 98.23, 26.65, 46.56])
例如,第1列我想要0-90之间的数字,第4列我想要70-100之间的值。所以我的理想输出是:
array = ([4, 78.01, 65.00, 98.00],
[6, 45.98, 56.54, 98.76])
有什么办法吗?
您需要使用链接所有条件,bitwise operators
并执行布尔索引:
array[(array[:,0] > 0) & (array[:,0] < 100) & (array[:,3] > 90) & (array[:,3] < 100)]
array([[ 4. , 78.01, 65. , 98. ],
[ 6. , 45.98, 56.54, 98.76]])
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句