将matlab变量导出为python用法的文本
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了将matlab变量导出为python用法的文本,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1319字,纯文字阅读大概需要2分钟。
内容图文
![将matlab变量导出为python用法的文本](/upload/InfoBanner/zyjiaocheng/730/605e506c38d04e56a6cb93d91a9fb19a.jpg)
所以让我们开始说我是matlab的初学者.我正在使用python,现在我收到了matlab文件中的一些数据,我需要将其导出为可以与python一起使用的格式.
我google了一下,发现我可以使用以下方法将matlab变量导出到文本文件:
dlmwrite('my_text', MyVariable, 'delimiter' , ',');
现在我需要导出的变量是一个16000 x 4000矩阵的双精度格式0.006747668446927.现在问题出现在这里.我需要导出每个double的完整值.尝试使用该功能可以让我以0.0067477的格式导出数字.这是行不通的,因为我需要更多的精确度来做我正在做的事情.那么如何导出每个变量的完整值呢?或者如果你有更优雅的方式在python中使用那个巨大的matlab矩阵,请随意.
问候,
波格丹
解决方法:
在Python和Matlab之间交换大块的数值数据
推荐HDF5
> http://en.wikipedia.org/wiki/Hierarchical_Data_Format
Python绑定称为h5py
> http://code.google.com/p/h5py
以下是两个方向的两个示例.首先来自
Matlab到Python
% matlab
points = [1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12 ];
hdf5write('test.h5', '/Points', points);
# python
import h5py
with h5py.File('test.h5', 'r') as f:
points = f['/Points'].value
现在从Python到Matlab
# python
import h5py
import numpy
points = numpy.array([ [1., 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12] ])
with h5py.File('test.h5', 'w') as f:
f['/Points'] = points
% matlab
points = hdf5read('test.h5', '/Points');
注意Matlab中的列将在Python中作为一行出现,反之亦然.这不是一个错误,而是C和Fortran解释内存中连续数据的方式之间的差异.
内容总结
以上是互联网集市为您收集整理的将matlab变量导出为python用法的文本全部内容,希望文章能够帮你解决将matlab变量导出为python用法的文本所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。