如何在python中将3D数组转换为2D数组列表?
我想将一个3D数组(假设大小为3x4)转换为一个包含3个(3x4)数组的列表。 else块中的3D数组A与if块中的类型不同 我尝试了tolist()函数,但它将3D数组转换为列表列表,这是不需要的如何在python中将3D数组转换为2D数组列表?,python,list,multidimensional-array,svd,Python,List,Multidimensional Array,Svd,我想将一个3D数组(假设大小为3x4)转换为一个包含3个(3x4)数组的列表。 else块中的3D数组A与if块中的类型不同 我尝试了tolist()函数,但它将3D数组转换为列表列表,这是不需要的 X = np.random.randn(3, 3, 3) for R in range(1,10): N = len(X.shape) B = () C = [] for i in range(N): B += svd(X[i])
X = np.random.randn(3, 3, 3)
for R in range(1,10):
N = len(X.shape)
B = ()
C = []
for i in range(N):
B += svd(X[i])
C.append(B[3*i])
C = np.array(C)
if R <= np.shape(C)[2]:
A = C[:,:,:R]
else:
A = np.concatenate((C[:,:,:np.shape(C)[2]],np.zeros((3,3,1))),axis=2)
X=np.random.randn(3,3,3)
对于范围(1,10)内的R:
N=透镜(X形)
B=()
C=[]
对于范围(N)中的i:
B+=svd(X[i])
C.追加(B[3*i])
C=np.数组(C)
如果要将3D数组转换为2D数组列表,只需使用list
:
X = np.random.randn(3, 3, 3)
list(X)
要将三维阵列转换为二维阵列列表,只需使用list
:
X = np.random.randn(3, 3, 3)
list(X)
numpy数组是一个iterable,您可以轻松地将其转换为列表:
lst = list(A)
演示:
numpy数组是一个iterable,您可以轻松地将其转换为列表:
lst = list(A)
演示:
这闻起来像个XY问题。什么是numpy不能为你做的?这闻起来像是XY问题。列表能为你做什么,而numpy做不到?