如何在python中读写和存储matlab的数据文件(*.mat)

使用sicpy.io即可.sicpy.io提供了两个函数loadmat和savemat,非常方便.

以前也有一些开源的库(pymat和pymat2等)来做这个事,

不过自从有了numpy和scipy以后,这些库都被抛弃了.

下面是一个简单的测试程序,具体的函数用法可以看帮助文档:

[python] view plaincopy

  1. import scipy.io as sio
  2. import matplotlib.pyplot as plt
  3. import numpy as np
  4. #matlab文件名
  5. matfn=u‘E:/python/测试程序/162250671_162251656_1244.mat‘
  6. data=sio.loadmat(matfn)
  7. plt.close(‘all‘)
  8. xi=data[‘xi‘]
  9. yi=data[‘yi‘]
  10. ui=data[‘ui‘]
  11. vi=data[‘vi‘]
  12. plt.figure(1)
  13. plt.quiver( xi[::5,::5],yi[::5,::5],ui[::5,::5],vi[::5,::5])
  14. plt.figure(2)
  15. plt.contourf(xi,yi,ui)
  16. plt.show()
  17. sio.savemat(‘saveddata.mat‘, {‘xi‘: xi,‘yi‘: yi,‘ui‘: ui,‘vi‘: vi})
时间: 2024-09-28 06:05:42

如何在python中读写和存储matlab的数据文件(*.mat)的相关文章

解决 python 中读写文件的终极方案 UnicodeDecodeError: 'gbk' codec can't decode byte 0x9d in position 1270: illega

UnicodeDecodeError: 'gbk' codec can't decode byte 0x9d in position 1270: illegal multibyte sequence 上面是遇到的错误,本来想完成读文件,再写入另一文件的.但是在 fp.read() 时,一直遇到上面的错误,经过各种百度,google, 还有神奇的 stackoverflow 才知道是字符流的问题. 知道问题所在,还是没有解决,又苦苦搜索,终于在 stackoverflow 上找到灵感,可以把 op

如何在Python中从零开始实现随机森林

欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 决策树可能会受到高度变异的影响,使得结果对所使用的特定测试数据而言变得脆弱. 根据您的测试数据样本构建多个模型(称为套袋)可以减少这种差异,但是树本身是高度相关的. 随机森林是套袋(方法)的延伸,除了基于多个测试数据样本构建树木之外,它还限制了可用于构建树木的特征,使得树木间具有差异.这反过来可以提升算法的表现. 在本教程中,您将了解如何在Python中从头开始实现随机森林算法. 完成本教程后,您将知道: 套袋决策树和随机森林算法的区别.

如何在Python中快速画图——使用Jupyter notebook的魔法函数(magic function)matplotlib inline

如何在Python中快速画图--使用Jupyter notebook的魔法函数(magic function)matplotlib inline 先展示一段相关的代码: #we test the accuracy of knn and find the k which makes the biggest accuracy k_range=list(range(1,26))#[1,25] scores=[] for k in k_range: knn=KNeighborsClassifier(n_

使用python中的matplotlib进行绘图分析数据

http://blog.csdn.net/pipisorry/article/details/37742423 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当完备,并且 Gallery页面 中有上百幅缩略图,打开之后都有源程序.因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定. 在Linux下比较著名的数据图工具

python中的BaseManager通信(一)文件三分

可以在windows下单机运行 主部分(提供服务器) 1 #mainfirst.py 2 from multiprocessing.managers import BaseManager 3 import Queue 4 queue = Queue.Queue() 5 class QueueManager(BaseManager): pass 6 QueueManager.register('get_queue', callable=lambda:queue) 7 m = QueueManage

如何在Linux中使用sFTP上传或下载文件与文件夹

如何在Linux中使用sFTP上传或下载文件与文件夹 sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似. 然而,sFTP 比 FTP 更安全;它通过加密 SSH 传输处理所有操作.在本文中,我们将向你展示如何使用 sFTP 上传/下载整个目录(包括其子目录和子文件). 作者:Aaron Kili来源:Linux中国|2017-03-09 14:42 移动端 收藏 分享 51CTO诚邀您9月23号和秒拍/国美/美团元专家一起聊智能CDN的优化之路

android如何在Codebase中添加一级新的ProjectConfig.mk文件

如何在Codebase中添加一个新的ProjectConfig.mk文件,使得其优先级大于 mediatek/config/$project/ProjectConfig.mk ProjectConfig.mk 优先级大于$project目录下的ProjectConfig.mk文件 [Solution] Step1. 在mediatek/config下面添加自己的文件夹名称,如testconfig,在其中放入贵司自己的ProjectConfig.mk Step2. 修改文件mediatek/bui

Python 中的驻留机制:小数据池和代码块

Python 中的驻留机制:小数据池和代码块 Python 中的驻留机制主要有两个:小数据池和代码块.驻留机制并不是学习 Python 过程中特别重要的概念,我们学习小数据池的目的主要有两个方面: 解决日后写代码过程中可能出现的疑惑.在后期开发中,能 明确 知道有些代码为什么不能正常使用 找工作面试时或多或少可能被问到,关键时刻起到装 X 的作用 先补充一个关键字 is.is(是) 和 ==(等于) 的作用十分相似,我们在这里将它们进行一个对比: == : 官方:判断等号两边的内容是否相同 白话

vs中web配置可浏览json数据文件

在日常的前端开发中,我们会制作一些数据文件,常用的有后缀名为json的文件,但是vs在启动项目时,是不能浏览json文件的,常见的错误提示如下图所示 解决这个错误,只需要在web.config文件中配置如下(这样就可以浏览json文件了) <system.webServer> <staticContent> <mimeMap fileExtension=".json" mimeType="application/json"/> &