我有一个数组(列表),它是NxK。但是,我想“过滤”是在基于第4列和第6列的值输入一些约束之后。这是我目前掌握的密码。在
minmag = 5
maxmag = 7
mindist = 25
maxdist = 64
filter = np.zeros((1, 7), dtype='object')
add = np.zeros((1, 7), dtype='object')
k = 0
for i in range(0,len(lists)):
if lists[i, 4]>= minmag and lists [i, 4] <= maxmag and lists [i, 6]>=mindist and lists [i, 6]<= maxdist:
if k == 0:
for x in range(0,16):
filter[0, x] = lists[i, x]
k = 1
else:
for x in range(0, 16):
add[0, x] = lists[i, x]
filter = np.append(filter, add, axis=0)
它很管用,但不是那么整洁。只是想知道有没有更好的解决办法。在
简化最重复的部分:
您还可以将嵌套的相结合
if
组合成一个单独的if
s,其中4个条件与^{我还相信(不知道
^{pr2}$lists
是如何定义的,我不确定)可以用然后用}
row[x]
代替{相关问题 更多 >
编程相关推荐