MATLAB和它的开源替代品Octave都是流行的数学软件。scipy.io包中有一个savemat
函数。用NumPy数组构造一个字典对象。savemat
函数可以把该字典对象转换并存储到一个.mat文件中。
准备工作
怎样安装MATLAB和Octave不在本书的讨论范围之内。Octave的官网上有安装指南(http://www.gnu.org/software/octave/download.html)。
具体步骤
安装好MATLAB或Octave后,需要按照如下步骤保存NumPy数组。
- 调用
savemat
函数。
创建一个NumPy数组。调用savemat
函数,把这个数组保存到一个.mat文件中。savemat
函数需要两个参数:文件名,包含变量名和变量取值的字典对象。
a = numpy.arange(7)
scipy.io.savemat("a.mat", {"array": a})
- 加载.mat文件。
切换到上一步骤生成的.mat文件所在的目录。在Octave中加载该文件,并查验数组数据。
octave-3.4.0:2> load a.mat
octave-3.4.0:3> array
array =
0
1
2
3
4
5
6
本的完整代码如下。
import numpy
import scipy.io
a = numpy.arange(7)
scipy.io.savemat("a.mat", {"array": a})