gpt4 book ai didi

python - append Python 3D Numpy 数组

转载 作者:行者123 更新时间:2023-11-28 21:40:30 26 4
gpt4 key购买 nike

我有一些关于 3D python numpy 的问题

import numpy as np
n = 5
m = 4

Sc = np.random.rand(m,n,n)
S1 = np.zeros((1,n+2))
S2 = np.zeros((n,1))

A0 = np.r_[S1, np.c_[S2, Sc[0], S2], S1]
A1 = np.r_[S1, np.c_[S2, Sc[1], S2], S1]
#print(A)
#print(B)
A = np.array([A0,A1])
A.shape
Atmp = np.r_[S1, np.c_[S2, Sc[2], S2], S1]

A 的维度 = (2, 7, 7)

Atmp = (7,7) 的维数。

如何将 Atmp append 到 A

最佳答案

如果可以,请不要concatenate/append/stack 数组,尤其是大数组。这非常浪费内存而且速度很慢。

赋值 A = np.empty((m, n+2, n+2)) 然后用 A[i] = np.r_[S1, np. c_[S2, Sc[i], S2], S1].或者将其矢量化并摆脱 for 循环:

A = np.zeros((m, n+2, n+2))
A[:,1:-1,1:-1] = Sc

甚至一行完成:

A = np.pad(Sc, ((0,0),(1,1),(1,1)), 'constant', constant_values = 0)

关于python - append Python 3D Numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45542222/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com