本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
一、使用模块scipy.io的函数loadmat实现Python对mat数据的读写
1、使用语法
scipy.io.loadmat(file_name,mdict=None,appendmat=True,**kwargs)
2、使用实例
importscipy.ioassio importnumpyasnp #load data=sio.loadmat('data.mat')
二、使用模块scipy.io的函数savemat实现Python对mat数据的读写
1、使用语法
scipy.io.savemat(file_name,mdict,appendmat=True,format='5',long_field_names=False, do_compression=False,oned_as='row')
2、使用实例
importscipy.ioassio importnumpyasnp #save array_x=np.array([1,2,3,4]) array_y=np.array([5,6,7,8]) sio.savemat('save.mat',{'arrayX':array_x,'arrayY':array_y})
注意:使用模块scipy.io读取mat数据有时会因为mat文件格式level太高而报错,例如:NotImplementedError: Please use HDF reader for matlab v7.3 files,这时就需要使用h5py方法。
importh5py mat=h5py.File(mat_path) mat=np.transpose(mat['you_matrix_name_in_mat'])
以上就是python中使用模块scipy.io处理mat数据的两种方法,希望能对你有所帮助哟·更多python高级学习推荐:python高级教程。