You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将Matlab生成的.mat格式文件转换为.csv格式

解决方法

你可以通过两种常用方案实现.mat矩阵转CSV,可根据后续使用需求选择:

方案1:使用NumPy实现(轻量快捷)

无需额外安装依赖,适合仅需要转存文件的场景,代码如下:

import scipy.io
import numpy as np

# 读取.mat文件
mat = scipy.io.loadmat('u_x.mat')
# 提取目标2×8638矩阵
target_array = mat['u_x']
# 保存为csv文件
# delimiter指定分隔符为逗号,fmt指定数值保留10位小数,可根据需求调整精度
np.savetxt('u_x_output.csv', target_array, delimiter=',', fmt='%.10f')

如果需要将矩阵转换为8638行2列的常规样本-特征结构(更适配大部分后续数据处理逻辑),只需在数组后加转置符号.T,还可自定义表头:

# 转置后保存,带自定义表头
np.savetxt('u_x_transposed.csv', target_array.T, delimiter=',', fmt='%.10f', header='x轴数值,y轴数值', comments='')

comments=''参数用于避免NumPy默认给表头添加#前缀。

方案2:使用Pandas实现(灵活适配后续处理)

如果后续还需要对数据做清洗、计算、统计等操作,更推荐用Pandas处理:

import scipy.io
import pandas as pd

# 读取.mat文件并提取目标矩阵
mat = scipy.io.loadmat('u_x.mat')
target_array = mat['u_x']

# 转为DataFrame结构,此处示例为转置后带表头的常用结构
df = pd.DataFrame(target_array.T, columns=['自变量','响应值'])
# 保存为csv,index=False表示不导出默认行索引
df.to_csv('u_x_pandas_output.csv', index=False)

内容的提问来源于stack exchange,提问作者user13053456

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 02:45:03