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

Octave中无法从mat文件提取指定内容为csv格式的代码求助

Octave 从MAT文件提取指定变量导出为CSV实现方案
  • 加载目标MAT文件,确认待提取的目标变量(即截图中箭头标记的对象)
% 替换为你的MAT文件实际存储路径
mat_file_path = "your_file.mat";
% 加载文件内所有变量到工作区
load(mat_file_path);
% 列出工作区所有变量的名称、维度、类型,定位你需要提取的目标变量名
whos
  • 按原有结构提取目标变量并导出为CSV
% 将下方的target_variable替换为你上一步定位到的目标变量名
target_data = target_variable;

if isstruct(target_data)
    % 按原有顺序提取结构体字段名作为CSV表头
    col_names = fieldnames(target_data);
    % 转换结构体为单元格数组,保留原有行列对应关系
    data_matrix = squeeze(struct2cell(target_data))';
    % 拼接表头和数据
    export_content = [col_names'; data_matrix];
else
    % 非结构体类型(数值矩阵、普通数组等)直接作为导出内容
    export_content = target_data;
end

% 替换为你想要保存的CSV文件路径
csv_save_path = "output.csv";
% 写入CSV文件,若提示函数不存在先执行pkg load io加载io工具包
cell2csv(csv_save_path, export_content);

常见问题处理:

  1. 运行提示cell2csv未定义:先执行pkg install -forge io安装官方io工具包,再执行pkg load io加载后重新运行导出代码即可
  2. 导出后CSV行列顺序颠倒:把代码中squeeze(struct2cell(target_data))后的转置符'删除即可,适配不同MAT文件的变量存储维度
  3. 存在中文乱码:在cell2csv参数中追加编码设置,写为cell2csv(csv_save_path, export_content, ",", "utf-8")即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 09:27:31