python - 如何将 Python 1D、2D 或 3D NumpPy 数组保存到 MATLAB .mat
问题描述
Python 的 SciPy 包具有将 Python 变量保存到 MATLAB.mat
文件
中的函数https://docs.scipy.org/doc/scipy/reference/generated/scipy.io.savemat.html
但是,文档缺少示例,我没有知道它想要作为输入的变量字典是什么。
假设我有一个 2D NumPy 数组A
和一个 3D NumPy 数组B
,我如何将它们保存到一个.mat
名为的文件中my_arrays.mat
?
我可以保存多个变量.mat
还是每个变量都需要一个文件?
如何将.mat
文件读入 Python 以及如何知道如何访问它们已加载的变量?
解决方案
保存和加载示例
import scipy.io as sio
# dummy data
A = np.random.randint(0,10,100)
B = np.random.randint(0,10,100)
# collect arrays in dictionary
savedict = {
'A' : A,
'B' : B,
}
# save to disk
sio.savemat('my_arrays.mat', savedict)
#load from disk
data = sio.loadmat('my_arrays.mat')
# alternative way to load from disk:
data = {}
sio.loadmat('my_arrays.mat', mdict=data)
推荐阅读
- c# - InvalidOperationException:生成 XML 文档时出错
- javascript - 如何使 service-worker.js 在浏览器打开时执行?
- javascript - javascript 导入得到了意外的令牌
- python - 在 Keras 中为 flow_from_directory 使用多个目录
- asp.net - Asp.net MVC core Bad Request - Request Too Long HTTP 错误 400。请求标头的大小太长
- javascript - 在 Javascript 中调用另一个函数中的函数
- php - 带有soapenv的SOAP请求
- c# - 如何强制用户使用特定的 UWP 模式?
- python-3.x - 如何提高keras模型的准确率,防止过拟合
- java - InelliJ IDE 中 revArr.main(revArr.java:6) 的线程“main”java.lang.NullPointerException 中的异常