[python][科学计算][numpy]使用指南7-读写

2019-02-27  本文已影响0人  jiedawang

最后一次更新日期: 2019/2/27

NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象(ndarray)和用于处理数组的例程集合组成的库。
使用NumPy,开发人员可以执行以下操作:

  • 数组的算数和逻辑运算。
  • 傅立叶变换和用于图形操作的例程。
  • 与线性代数有关的操作。 NumPy 拥有线性代数和随机数生成的内置函数。

使用前先导入模块:
import numpy as np

numpy 可使用专用的npynpz格式或常见的txt格式存储ndarray的数据。

1. 保存

In [803]: a=np.array([1,2,3,4])

In [804]: b=np.array([[5,6],[7,8]])

In [805]: np.save('D:\\out.npy',a)

In [806]: np.savez('D:\\out.npz',a,b=b)

In [807]: np.savetxt('D:\\out.txt',b,fmt="%d", delimiter=",")

拓展名可以省略,会自动补全。无法自动创建文件夹。
save用于保存单个数组为npy格式文件。
savez用于保存多个数组为npz格式文件,没有使用关键字参数传递的数组会自动命名为arr_0,arr_1,...
savetxt用于保存单个数组为txt格式文件,参数fmt指定保存时的字符串转换,参数delimiter指定分隔符,注意在读取时也需要指定分隔符。分隔符的设置对一维数组无效,二维以上的数组不适合用该方法保存。

2. 加载

In [835]: np.load('D:\\out.npy')
Out[835]: array([1, 2, 3, 4])

In [836]: npz=np.load('D:\\out.npz')

In [837]: npz['arr_0']
Out[837]: array([1, 2, 3, 4])

In [838]: npz['b']
Out[838]: 
array([[5, 6],
       [7, 8]])

In [841]: np.loadtxt('D:\\out.txt',dtype='int',delimiter=',')
Out[841]: 
array([[5, 6],
       [7, 8]])

np.load读取npz格式文件会得到一个NpzFile对象,之后通过保存时设置的名称进行[]索引可以取得每一个数组。

上一篇下一篇

猜你喜欢

热点阅读