使用Python实现.mat文件转换、读取

您所在的位置:网站首页 python图像转化为矩阵 使用Python实现.mat文件转换、读取

使用Python实现.mat文件转换、读取

2023-07-08 08:31| 来源: 网络整理| 查看: 265

目录

一、前言

二、将excel文件转换为mat文件

三、读取mat文件并进行可视化

四、将mat文件转换为excel文件 

一、前言

有时候我们拿到一个数据文件不是excel或者csv的怎么办呢?比如:你可恶的合作伙伴测实验数据时,用MATLAB丢给你一个mat矩阵文件时,该怎么办呢?别慌,数产小黑娃(头像虽黑,但本人不黑,欢迎打扰,谢谢支持!!!)带你解决这个问题!学完本篇文章后,你就可以将矩阵文件与表格文件实现互转了。

二、将excel文件转换为mat文件

我使用了一个openpyxl库来读取Excel文件。首先,我读取了一个Excel文件并选择活动工作表。然后,我使用了一个iter_rows()函数逐行获取数据,并将每一行添加到一个列表中。最后,我使用了一个scipy.io.savemat()函数将转换后的数据保存为MAT文件,并为矩阵取了一个名为“data”的变量名。

# 读取Excel文件 excel_file = '6-30测试.xlsx' workbook = openpyxl.load_workbook(excel_file) # 选择工作表 sheet = workbook.active # 获取数据 data = [] for row in sheet.iter_rows(values_only=True): data.append(row) # 将数据保存为MAT文件 mat_file = '6-30测试.mat' sio.savemat(mat_file, {'data': data}) 三、读取mat文件并进行可视化

我使用了loadmat函数来读取mat矩阵,并调用matplotlib函数进行画图可视化。

# 读取mat文件 mat_file = '6-30测试.mat' data = sio.loadmat(mat_file) # 提取数据 data_array = data['data'] # 可视化数据 plt.plot(data_array) plt.xlabel('X') plt.ylabel('Y') plt.title('MAT Data Visualization') plt.show()

 进行mat矩阵可视化:

四、将mat文件转换为excel文件 

我们使用了Python中的scipy和pandas库进行操作。以下实现了如何将MAT文件转换为Excel文件:

import scipy.io as sio import pandas as pd # 读取MAT文件 mat_file = '6-30测试.mat' data = sio.loadmat(mat_file) # 提取数据 data_array = data['data'] # 转换为DataFrame df = pd.DataFrame(data_array) # 保存为Excel文件 excel_file = 'output.xlsx' df.to_excel(excel_file, index=False)

使用DataFrame函数将mat矩阵转换成excel文件时,Excel文件中会包含表头,如果你希望保留原始的数据结构和没有表头的格式,可以使用openpyxl库来手动创建Excel文件并写入数据。这个就留给你们自主思考了。

所有生成的文件如下所示: 

当然之前还写了一个它的姊妹篇《如何用matlab实现矩阵与mat格式、xlsx格式文件互转》,当我们利用matlab去处理我们的实验数据时,常常需要读取mat格式、xlsx格式文件,而且有时候我们又将利用Python去做后续工作,这时候我们就迫切需要了解矩阵与mat格式、xlsx格式文件在两个平台上如何实现互相转换。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3