【发布时间】:2015-08-18 02:17:50
【问题描述】:
我有两个数组,id 和x,其中id 是一个唯一标识符,它告诉我们x 中的值属于特定组。我想要做的是检查x 中的值以查看是否满足某些条件,如果满足则打印相应的x 值。例如
id = np.array([1,1,1,2,2,2,3,3,3,4,4,4,5,5,5])
x = np.array([10,9,6,9,7,1,12,5,10,9,8,4,6,2,1])
counter = 1
for i in range(len(id)):
if id[i] == counter:
for j in range(i,len(id)):
if x[j] > 7:
continue
else:
print(id[i],x[j])
counter += 1
break
打印
1 6
2 7
3 5
4 4
5 6
现在如果我们有
id = np.array([1,1,1,2,2,2,3,3,3,4,4,4,5,5,5])
x = np.array([10,9,6,9,7,1,12,11,10,9,8,4,6,2,1])
输出是
1 6
2 7
3 4
4 4
5 6
这不是我想要的输出,因为4 不在id 值为3 的组中。所以我的问题是,如果x 值对应于代表它的id 值而不跳过该组,如何仅评估条件if x[j] > 7:?
【问题讨论】:
标签: python arrays if-statement for-loop conditional-statements