Far*_*naz 0 python numpy save multidimensional-array
我有一个大小为 (192,192,4000) 的 numpy 数组,我想以快速的方式将其写入磁盘。我不在乎格式,我可以稍后转换它。
我现在写的是我将它保存为需要很长时间的 csv 格式:
for i in range(0,192):
np.savetxt(foder+"/{}_{}.csv".format(filename,i), data[i] , "%i", delimiter=", ")
Run Code Online (Sandbox Code Playgroud)
这需要 20-25 秒。我已经尝试过在 stackoverflow 问题中找到的 Pandas DataFrame 和 Panel 方法并保存 numpy。所有这些似乎都没有错误地运行,但是当我打开它时文件夹是空的。
知道如何提高速度吗?
为什么代码运行没有错误但没有保存任何内容,例如 numpy.save?!
小智 5
通常,保存像您拥有的大数组的最快方法是将其保存为二进制文件,这可以通过 numpy 的 save 命令完成。例如,下面的代码创建了一个用零填充的 3D 数组,将数组写入文件,然后检索它:
a = numpy.zeros((192,192,4000))
numpy.save("mydata.npy",a)
b = numpy.load("mydata.npy")
Run Code Online (Sandbox Code Playgroud)
当然,文件“mydata.npy”应该在保存命令之后的当前目录中。
| 归档时间: |
|
| 查看次数: |
2154 次 |
| 最近记录: |