【发布时间】:2020-04-27 12:42:08
【问题描述】:
假设我有以下 numpy 数组:
array = np.array([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
,[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
,[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]], np.int32)
如果我使用切片,我会得到:
array[1:5,1:5]
array([[2, 3, 4, 5],
[2, 3, 4, 5],
[2, 3, 4, 5],
[2, 3, 4, 5]], dtype=int32)
如果我想选择具有“间隙”的行和列(例如 1,3 和 5),我想要类似的结果。
所以我想选择行和列 1,3,5 并得到:
array([[2, 4, 6],
[2, 4, 6],
[2, 4, 6]], dtype=int32)
但我不知道该怎么做。
我想在 tensorflow 2.0 中做同样的事情,但 tf.gather 没有帮助
编辑:当行数和列数没有模式时,切片并不能解决问题
【问题讨论】:
-
@yatu 并没有解决问题。例如,如果我想选择行和列 1,2.4,10 没有模式,切片并不能解决问题
-
@MercyDude 因为请参阅上面的编辑部分
-
@MercyDude 看起来 yatu 已经理解了这个问题。但是谢谢你的努力
标签: python numpy tensorflow