我有一个列表“Z”:
import numpy as np
z[0] = np.random.normal( 0, 1, ( 500, 20 ) )
z[1] = np.random.normal( 0, 1, ( 500, 30 ) )
Run Code Online (Sandbox Code Playgroud)
列表中有大约 100 个数组。我仅使用 2 号列表进行说明。存储的数组都是 500 的第 0 维
我想实现:
C = np.concatenate( ( z[0] , z[1] ),1)
Run Code Online (Sandbox Code Playgroud)
我试过:
z1 = [ np.concatenate( z[ii], 1 ) for ii in range(0,len(z)) ]
Run Code Online (Sandbox Code Playgroud)
但它仍然返回原始列表并且不连接存储的数组
多维数组的连接在没有指定要连接的轴的情况下有点不明确。我假设您想水平堆叠数组,因为两者的行数相同。最简单的调用是
stacked = np.hstack(Z)
Run Code Online (Sandbox Code Playgroud)
这将沿轴 1 连接。您可以在此处找到文档。
更一般地,您还可以使用
stacked = np.concatenate(Z, axis=1)
Run Code Online (Sandbox Code Playgroud)
这也适用于高维数组。相应的文档在这里。