在NumPy中,您可以按值过滤数组中的数组数据,例如:
L = [[str(j) + str (i) for i in range(5)] for j in range(5)]
# [['00' '01' '02']
# ['10' '11' '12']
# ['20' '21' '22']]
要找出第三列中包含值“ 22”的行的第一列中的值,请执行以下操作:
print(A1[A1[:,2] == '22', 3])
#['20']
如何在普通的二维数组llist-type中进行这种过滤?
还是有必要转移到NumPy?
答案 0 :(得分:0)
我认为不必将嵌套列表转换为numpy数组。
您可以按照下面的代码轻松执行要求的操作
L = [[2, 1, 0], [12, 10, 11], [21, 22, 20]]
L = [sorted(l) for l in L]
if(L[2][2]==22):
print(L[2][0])
答案 1 :(得分:0)
您可以使用列表理解:
L = [[str(j) + str (i) for i in range(5)] for j in range(5)]
[l[0] for l in L if l[2] == '22']
您要遍历按第3列(索引2)过滤的行,并保留第一列(索引0)中的元素
输出:
['20']