NumPy IO操作
NumPy IO 操作是以文件的形式从磁盘中加载 ndarray 对象。在这个过程中,NumPy 可以两种文件类型处理 ndarray 对象,一类是二进制文件(以
上述两种文件格式,分别对应着不同的 IO 方法,如下所示:
我们知道,文件会被保存在不同的计算机上(比如 Linux、Windows、MacOSX 等)。为了不受的计算机架构影响,NumPy 开发团队给 ndarray 对象引入了一种
示例如下:
示例如下:
.npy
结尾),另一类是普通文本文件。上述两种文件格式,分别对应着不同的 IO 方法,如下所示:
文件类型 | 处理方法 |
---|---|
二进制文件 | load() 和 save() |
普通文本文件 | loadtxt() 和 savetxt() |
我们知道,文件会被保存在不同的计算机上(比如 Linux、Windows、MacOSX 等)。为了不受的计算机架构影响,NumPy 开发团队给 ndarray 对象引入了一种
.npy
文件格式,通过它来件实现对 ndarray 对象的保存。
numpy.save()
numpy.save() 方法将输入数组存储在.npy
文件中。numpy.save(file, arr, allow_pickle=True, fix_imports=True)
参数说明:-
file:保存后的文件名称,其文件类型为
.npy
; - arr:要保存的数组
- allow_pickle:可选项,布尔值参数,允许使用 pickle 序列化保存数组对象。
- fix_imports:可选项,为了便于在 Pyhton2 版本中读取 Python3 保存的数据。
示例如下:
import numpy as np a = np.array([1,2,3,4,5]) np.save('first',a)使用 load() 从 first.npy 文件中加载数据,如下所示:
import numpy as np b = np.load('outfile.npy') print( b)输出结果如下:
[1, 2, 3, 4, 5]
savetxt()
savetxt() 和 loadtxt() 分别表示以文本格式存储数据或加载数据。其中 savetxt() 的语法格式如下:np.savetxt('filename文件路径', self.task, fmt="%d", delimiter=" ")
参数说明:- filename:表示保存文件的路径;
- self.task: 要保存数组的变量名;
- fmt="%d": 指定保存文件的格式,默认是十进制;
- delimiter=" "表示分隔符,默认以空格的形式隔开。
示例如下:
import numpy as np a = np.array([1,2,3,4,5]) np.savetxt('second.txt',a) #使用loadtxt重载数据 b = np.loadtxt('second.txt') print(b)输出结果:
[ 1. 2. 3. 4. 5.]