【发布时间】:2016-10-28 11:58:37
【问题描述】:
给定:
M = [[1, 2],
[3, 4]]
N = [[(0,1), (1, 0)],
[(1,1), (0,0)]]
与M 和N,两个维度2x2。我如何获得元组列表L,其中每个元组是值的位置以及来自M 和N 的值的组合:
L = [((0,0), (0,1), 1) ...]
上面L中的第一个条目是M和N中的位置(0,0),以及来自N的元组/值(0,1),以及来自@987654336的值1 @。
我需要堆叠M、N 来创建第三个维度吗? numpy 是否有一种干净有效的方法来生成这样的元组列表?
【问题讨论】:
-
N 是 3 维的,这是你的意思吗?
-
不,N 是一个 2x2 元组数组。
-
你试过 numpy.ndenumerate 吗?
-
是的,这使它成为 3d。尝试使用打印 np.array(N).shape 来查看。无论如何,你为什么需要 L 的位置?我的意思是,似乎将 L 保存为一个数组,其中 L[0][0]=((0,1),1) 会更好,而不是保存索引。
-
L中的元素只是将索引映射到值。如果您已经拥有M和N,那么这不是额外信息,因为您可以直接索引M和N而无需存储映射,因此您根本不需要L。你到底想做什么?
标签: python arrays numpy matrix