Python 创建阵列矩阵
我想用tensorflow中的数组元素创建一个矩阵 假设我想创建一个大小为Python 创建阵列矩阵,python,tensorflow,Python,Tensorflow,我想用tensorflow中的数组元素创建一个矩阵 假设我想创建一个大小为(2,2*N)(在tensorflow中)的矩阵,其中N是我拥有的一些数组的大小,比如 a=[1,2,3,..N], b=2*[1,2,3,..N], c=3*[1,2,3,..N], d=4*[1,2,3,..N] 我想创建一个矩阵M,这样M=[[a,b],[c,d]]就可以通过一个for循环在矩阵中插入数组 这在tensorflow中可能吗 我试图将它显式地写为M=[[a,b],[c,d]] 这是可行的,但我想在f
(2,2*N)
(在tensorflow中)的矩阵,其中N是我拥有的一些数组的大小,比如
a=[1,2,3,..N],
b=2*[1,2,3,..N],
c=3*[1,2,3,..N],
d=4*[1,2,3,..N]
我想创建一个矩阵M
,这样M=[[a,b],[c,d]]
就可以通过一个for循环在矩阵中插入数组
这在tensorflow中可能吗
我试图将它显式地写为M=[[a,b],[c,d]]
这是可行的,但我想在for循环中这样做,并尝试一次插入每个数组
那么像这样的东西可以在循环中使用吗
M[0,0]=a
M[0,1]=b
M[1,0]=c
M[1,1]=d
谢谢您可以在具有不同交错范围的输入阵列上使用
zip
:
data = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
print([[a, b] for a, b in zip(data[::2], data[1::2])])
>>> [[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]
如果希望使其更通用,还可以创建对zip的输入,并将zip迭代的输出传递给列表构造函数:
data = [[1,2,3],[4,5,6],[7,8,9],[10,11,12],[13,14,15],[16,17,18]]
n = 3
print([list(z) for z in zip(*[data[i::n] for i in range(n)])])
>>> [[[1, 2, 3], [4, 5, 6], [7, 8, 9]], [[10, 11, 12], [13, 14, 15], [16, 17, 18]]]
为什么要在for循环中执行此操作?