Python 将Numpy数组追加/连接到Numpy数组

Python 将Numpy数组追加/连接到Numpy数组,python,numpy,Python,Numpy,我有两个np数组,一个是一维的,另一个是0到8维的。我试图将多维数组附加到另一个数组上,就像您使用列表一样。我尝试了np.append(1dim,multidim)和np.concatenate([1dim,multidim]),但都没有成功 [-33.752, 150.902, 38.022, 203.0, 1.0] [[ -33.75 150.9 39.805 0. 1. ] [ -33.75 150.902 44.697 1.

我有两个np数组,一个是一维的,另一个是0到8维的。我试图将多维数组附加到另一个数组上,就像您使用列表一样。我尝试了
np.append(1dim,multidim)
np.concatenate([1dim,multidim])
,但都没有成功

[-33.752, 150.902, 38.022, 203.0, 1.0]

[[ -33.75   150.9     39.805    0.       1.   ]
 [ -33.75   150.902   44.697    1.       1.   ]
 [ -33.75   150.905   49.054    2.       1.   ]
 [ -33.752  150.905   39.062  204.       1.   ]
 [ -33.755  150.905   40.698  406.       1.   ]
 [ -33.755  150.902   37.512  405.       1.   ]
 [ -33.755  150.9     36.249  404.       1.   ]
 [ -33.752  150.9     36.627  202.       1.   ]]
成为:

[-33.752, 150.902, 38.022, 203.0, 1.0],
 [ -33.75   150.9     39.805    0.       1.   ]
 [ -33.75   150.902   44.697    1.       1.   ]
 [ -33.75   150.905   49.054    2.       1.   ]
 [ -33.752  150.905   39.062  204.       1.   ]
 [ -33.755  150.905   40.698  406.       1.   ]
 [ -33.755  150.902   37.512  405.       1.   ]
 [ -33.755  150.9     36.249  404.       1.   ]
 [ -33.752  150.9     36.627  202.       1.   ]]

我希望能够通过使用
1dim[1]

引用多维数组。您的示例输出显示了一个(1x8)数组与一个(Nx8)数组连接,形成一个(N+1 x 8)数组

如果您想创建一个“东西”,其中第一个元素是一维数组,第二个元素是N-D数组,那么您可以选择列表或元组。Numpy在这方面没有很好的设施

如果您想创建一个由两个二维数组组合而成的数组,根据您的示例,
np.vstack([flat\u array,big\u array])
将完成此操作


顺便说一句,在描述某事物的维数时,array.ndim与len(array.shape)相同。请注意,在numpy上下文中,具有5行8列的数组是二维的。

您的示例输出显示了一个(1x8)数组与一个(Nx8)数组连接以形成一个(N+1 x 8)数组

如果您想创建一个“东西”,其中第一个元素是一维数组,第二个元素是N-D数组,那么您可以选择列表或元组。Numpy在这方面没有很好的设施

如果您想创建一个由两个二维数组组合而成的数组,根据您的示例,
np.vstack([flat\u array,big\u array])
将完成此操作

顺便说一句,在描述某事物的维数时,array.ndim与len(array.shape)相同。请注意,在numpy上下文中,具有5行8列的数组是二维的。

您必须使用或。但要注意数组的形状。对于您的情况,您必须定义正确的形状

ans=np.append([[small array]],[big array],axis=0)(注意,额外的[]表示正确的形状,请阅读numpy.append教程)

您必须使用或。但要注意数组的形状。对于您的情况,您必须定义正确的形状


ans=np.append([[small array]],[big array],axis=0)(注意,额外的[]表示正确的形状,请阅读numpy.append教程)

或者您可以手动为任何形状执行此操作

blank= [ ] #create a blank list
a=1D array
blank.append(a)
b=nD array
for i in range(len(b)):
     blank.append(b[i])
answer=np.array(blank)

也可以对任何形状手动执行此操作

blank= [ ] #create a blank list
a=1D array
blank.append(a)
b=nD array
for i in range(len(b)):
     blank.append(b[i])
answer=np.array(blank)

使用纯Python元组
(\u 1d\u array,mul\u dim\u array)
,通过使用元组vs np array,在大型数据集上运行时会有任何显著的增加吗?大小不一,比如没有必要创建数组数组。如果要将(5,)数组与(8,5)数组连接起来以生成(9,5)数组,请使用
连接。但是如果目标是一个2元素的“数组”,请坚持使用一个列表。是的,如果你说8维,我想你指的是一个形状为M×N×P×Q×R×S×T×U的数组,使用纯Python元组
(\U 1d\U数组,mul\U dim\U数组)
因此…使用元组与np数组相比,在大型数据集上运行时会有任何显著的增加吗?大小不一的情况下,创建数组数组是没有意义的。如果要将(5,)数组与(8,5)数组连接起来以生成(9,5)数组,请使用
连接。但是如果目标是一个2个元素的“数组”,请坚持使用列表。是的,如果你说8维,我想你指的是一个形状为M×N×P×Q×R×S×T×U的数组