繁体   English   中英

遍历数组列以查找所需的值python

[英]Loop through an array column in order to find the required values python

我有一个最小值和最大值,我也有一个70X3数组。 我想从数组的第二列中找到所有在最小值和最大值范围内的值,并为这些值导出数组的所有3列。

例如

A=[2,3,4
   3,5,6
   5,5,5
   5,6,7
   10,11,22
   3,50,6]

最大值为11,最小值为5,矩阵的结果类似于

B=[3,5,6
   5,5,5
   5,6,7
   10,11,22]

到目前为止,我所做的是:

for i in MatrixA[:,1]):
    if i<maximum and i>minimum:
        aa.append(i)
aa=np.asarray(aa)

但这只能从第二列中找到我需要的值的范围,而不能从列1和3中找到相应的值

您可以使用

A[numpy.logical_and(5 <= A[:, 1], A[:, 1] <= 11), :]

使用简单的numpy表达式:

import numpy as np
a = np.array([[2,3,4],[3,5,6], [5,5,5], [5,6,7],[10,11,22], [3,50,6]])
b = a[(a[:,1] >= 5) & (a[:,1] <= 11)]

print(b)

输出:

[[ 3  5  6]
 [ 5  5  5]
 [ 5  6  7]
 [10 11 22]]

  • a[:,1] -考虑来自指定轴( 1轴,第二列)的值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM