在python中将数组拆分为两个较小的数组

在python中将数组拆分为两个较小的数组,python,arrays,numpy,split,append,Python,Arrays,Numpy,Split,Append,我有一个大小为80x40的数组,希望根据特定列(10)中的值将每一行发送到两个较小数组中的一个。我有类似于下面的代码,但这最终会使数组变平。我不知道输出数组(Array2,Array3)的Y维。我想我可以用一些代码来计算50以上和50以下的所有值,以获得输出轴的Y维度,然后制作两个np.Zero输出数组(Array.shape[0],YValue),并逐行追加到该数组中,但我仍然不确定这将如何工作 Array.shape=(80,40) Array2=[] Array3=[] for x in

我有一个大小为80x40的数组,希望根据特定列(10)中的值将每一行发送到两个较小数组中的一个。我有类似于下面的代码,但这最终会使数组变平。我不知道输出数组(Array2,Array3)的Y维。我想我可以用一些代码来计算50以上和50以下的所有值,以获得输出轴的Y维度,然后制作两个np.Zero输出数组(Array.shape[0],YValue),并逐行追加到该数组中,但我仍然不确定这将如何工作

Array.shape=(80,40)
Array2=[]
Array3=[]

for x in range(0,Array.shape[0]):
    if Array[x,10]<50:
        Array2.append(Array[x,:])
    else:
        Array3.append(Array[x,:])
Array.shape=(80,40)
Array2=[]
数组3=[]
对于范围(0,Array.shape[0])中的x:
如果将数组[x,10]作为一个较小的示例:

a = np.array([[1, 10], [1, 20], [2, 30], [2, 40], [1, 50], [3, 60], [1, 70]])

a2 = a[a[:, 0] < 1.5]
a3 = a[a[:, 0] >= 1.5]
a3
现在是:

array([[ 1, 10],
       [ 1, 20],
       [ 1, 50],
       [ 1, 70]])
array([[ 2, 30],
       [ 2, 40],
       [ 3, 60]])
因此,在您的情况下,请使用:

a2 = a[a[:, 10] < 50]
a3 = a[a[:, 10] >= 50]
a2=a[a[:,10]<50]
a3=a[a[:,10]>=50]