Python 如何将多个numpy文件一个文件一个文件地放在一个大numpy文件中?

Python 如何将多个numpy文件一个文件一个文件地放在一个大numpy文件中?,python,numpy,Python,Numpy,我有166600个numpy文件,我想把它们放在一个numpy文件中:一个文件一个文件, 我的意思是,创建新的大文件必须从一开始:第一个文件必须在文件中读写,因此大文件只包含第一个文件,之后我需要读写第二个文件,因此大文件包含前两个文件 import matplotlib.pyplot as plt import numpy as np import glob import os, sys fpath ="path_Of_my_final_Big_File" npyfilespath ="pa

我有166600个numpy文件,我想把它们放在一个numpy文件中:一个文件一个文件, 我的意思是,创建新的大文件必须从一开始:第一个文件必须在文件中读写,因此大文件只包含第一个文件,之后我需要读写第二个文件,因此大文件包含前两个文件

import matplotlib.pyplot as plt 
import numpy as np
import glob
import os, sys
fpath ="path_Of_my_final_Big_File"
npyfilespath ="path_of_my_numpy_files"   
os.chdir(npyfilespath)
npfiles= glob.glob("*.npy")
npfiles.sort()
all_arrays = np.zeros((166601,8000))
for i,npfile in enumerate(npfiles):
    all_arrays[i]=np.load(os.path.join(npyfilespath, npfile))
np.save(fpath, all_arrays)

如果我正确理解您的问题,您可以使用:

import matplotlib.pyplot as plt 
import numpy as np
import glob
import os, sys
fpath ="path_Of_my_final_Big_File"
npyfilespath ="path_of_my_numpy_files"   
os.chdir(npyfilespath)
npfiles= glob.glob("*.npy")
npfiles.sort()
all_arrays = []
for i, npfile in enumerate(npfiles):
    all_arrays.append(np.load(os.path.join(npyfilespath, npfile)))
np.save(fpath, np.concatenate(all_arrays))

根据数组的形状和预期的连接,您可能需要指定连接的轴参数。

但是numpy.savez会给我一个压缩文件,我只需要一个numpy未压缩文件文档状态将多个数组以未压缩的.npz格式保存到单个文件中。。它只使用压缩文件,以便在存档中可以单独找到所有单独的文件。还是要将所有数组的串联保存为单个数组?我要将所有数组的串联保存为同一numpy文件中的单个数组。我的意思是,我的文件将只包含一个包含许多数组的大数组。这在你的问题中并不清楚。所以请按照这个方向更新它。我给我这个错误:np.savefpath,np.appendall_数组类型错误:append至少接受2个参数1