将 3d numpy 数组分成 2 组 python

问题描述

我有一个这种形式的 3d 数组 (12457,8,6) 我想把它分成 2 个相等的 numpy 数组,比如 (12457,3,8) 事实上,第一个包含前 3 个波段,第二个包含剩余的波段:换句话说,我希望我的 array1 包含波段 1,2,3,我的 array2 包含波段 4,5,6

我试过了,但没有用

array1=data[:,:,3]
array1.shape
(12457,8)

解决方法

您可以使用 ["CMD-SHELL","/var/lib/neo4j/bin/neo4j status"] -

np.split
X = np.random.random((1200,6,8))
print(X.shape)

X1,X2 = np.split(X,2,axis=1) #Array,num of splits,axis for splitting
print(X1.shape,X2.shape)
,

splitarray_split 应该可以帮助您。

import numpy as np

arr = np.array([[1,3],[4,5,6],[7,8,9],[10,11,12]])
newarr = np.split(arr,2)
print(newarr)

打印:

[array([[1,6]]),array([[ 7,12]])]