我年轻时编程了一点,但我从来都不是很好.我发现Python非常适合我想做的事情.
我有一个Excel文件,其中包含我使用numpy genfromtxt函数读取的数据(64列,18496行).我想把所有东西放在一个名为H的3D矩阵中.我使用三个循环来做到这一点,但我知道这不是最有效的.
data = np.genfromtxt(filename, delimiter = ";",skiprows = 11)
H = np.zeros((N,N,Nt))
for k in np.arange(N):
for l in np.arange(N):
for m in np.arange(Nt):
H[k,l,m] = data[m+Nt*k,l]
Run Code Online (Sandbox Code Playgroud)
是否有切割器(更快的计算方式)这样做.我虽然使用numpy形状,但我无法做到.
谢谢
我有 3D 数据。我想逐层(在平面 X,Y 上)插入这些数据,因为计算每一层都需要很多时间。
我尝试使用 interp2D 函数并循环遍历各层,但 f 似乎仅适用于 i0 的最后一个值。
X = np.linspace(10., 15., 21)
Y = np.linspace(0.05, 1.85, 10)
for i0 in np.arange(N):
f = interpolate.interp2d(X, Y, data[:,:,i0], kind='linear')
Xnew = np.linspace(10., 15., 41)
Ynew = np.linspace(0.05, 1.85, 20)
datanew = f(Xnew,Ynew)
Run Code Online (Sandbox Code Playgroud)
如何对数据的每一层进行插值?
谢谢