【发布时间】:2020-11-07 00:11:33
【问题描述】:
我试图只打印列 (j) 和列 (j+1) 之间的差异等于 [0,1] 的元素的行。这意味着,在给定的示例中,我将只保留第一列(此数据集只是较大数据集的一个小样本):
e= [([0, 0], [0, 1], [0, 2]),
([0, 0], [0, 1], [0, 3]),
([0, 0], [0, 2], [1, 0]),
([0, 0], [0, 2], [1, 1]),
([0, 0], [0, 2], [1, 1]),
([0, 0], [0, 2], [1, 1]),
([0, 0], [0, 2], [1, 2]),
([0, 0], [0, 2], [1, 2]),
([0, 0], [0, 2], [2, 0]),
([0, 0], [1, 0], [1, 1]),
([0, 0], [1, 0], [1, 1]),
([0, 0], [1, 0], [1, 1]),
([0, 0], [1, 2], [2, 0])]
for i in range(0,12):
for j in range(0,2):
if ((np.array(e[i][j+1]) - np.array(e[i][j])) == [0,1]):
print (e[i])
提前致谢!
【问题讨论】:
-
你会从什么中减去 [0,2](e[0][2],因为 e[0][3] 不存在)?你想打印那个吗?另外我认为你在创建 numpy 数组的方式上犯了一个小错误
-
"我试图只打印列 (j) 和列 (j+1) 之间的差异等于 [0,1] 的元素的行。"那么,在减法的结果中,所有的值都需要与参考值匹配吗?并且错误消息表明您应该在比较结果上使用
.any或.all- 我想知道哪个是合适的,因为您希望 所有 值都匹配?跨度>