当前位置: 首页 > news >正文

MATLAB导入Excel数据

 假如Excel中存在三列数据需要导入Matlab中。

保证该Excel文件与Matlab程序在同一目录下。

function [time, voltage, current] = test(filename)
    % 读取Excel文件并提取时间、电压、电流数据
    % 输入参数:
    %   filename: Excel文件名(需包含路径,如'C:\data\TT.xlsx')
    % 输出参数:
    %   time: 时间列数据(对应Excel中的"time"列)
    %   voltage: 电压列数据(对应Excel中的"voltage"列)
    %   current: 电流列数据(对应Excel中的"current"列)

    % 检查文件是否存在
    if ~exist(filename, 'file')
        error('文件 "%s" 不存在,请检查路径或文件名。', filename);
    end

    % 读取Excel数据
    try
        data = readtable(filename);
    catch
        error('无法读取文件 "%s",请确认文件格式是否为Excel。', filename);
    end

    % 检查列是否存在
    requiredColumns = {'time', 'voltage', 'current'}; % 注意列名必须完全匹配
    missingColumns = setdiff(requiredColumns, data.Properties.VariableNames);
    if ~isempty(missingColumns)
        error('缺失必要列: %s。请检查Excel列名。', strjoin(missingColumns, ', '));
    end

    % 提取数据列
    time = data.time;
    voltage = data.voltage;  % 注意:Excel中的列名必须为"volage"
    current = data.current;
end

执行主程序即可导入:

    %% 数据加载(假设每个SOC点对应一个脉冲段)
    [t, V, I] = test('TT.xlsx');  % 加载当前SOC点数据

进一步,为了方便,可采用元胞数组打包。

    %% 数据加载(假设每个SOC点对应一个脉冲段)
    [t, V, I] = test('TT.xlsx');  % 加载当前SOC点数据
    data = {t, V, I};

 在该界面内ctrl+S 另存为成matlab数据文件,之后可直接使用。

假如要使用元胞数组里电压数据:

voltage = data{2}(:,1);

http://www.dtcms.com/a/91920.html

相关文章:

  • 海康/大华/宇视/华为/汉邦/天地伟业/英飞拓/科达/中星微/同为/天视通等主流监控设备RTSP地址
  • 深入理解MySQL数据库设计中的三范式及其违反后果
  • 两数之和解题记录
  • 自定义 ForDemo 类:简化 for 循环书写
  • Flutter网络请求封装:高效、灵活、易用的Dio工具类
  • 第十三章:优化内存管理_《C++性能优化指南》_notes
  • 强大的AI网站推荐(第四集)—— Gamma
  • Pre-flash和Main flash
  • 机器学习——CatBoost、目标变量统计、排序提升算法
  • 《TCP/IP网络编程》学习笔记 | Chapter 22:重叠 I/O 模型
  • 重复出现的数字
  • ‌GraphRAG 知识图谱,设置适配阿里云百炼平台实战教程【上】
  • 【大模型基础_毛玉仁】4.3 参数选择方法
  • python笔记之判断月份有多少天
  • 【商城实战(72)】解锁用户评价与晒单功能开发秘籍
  • 【第2月_day10】Pandas数据查看与选择
  • MySQL查询语句的使用
  • TypeScript实现二分查找算法:原理剖析与最佳实践
  • 网页的性能优化
  • 一. 相机模组摆放原理
  • OpenAI深夜直播「偷袭」谷歌!GPT-4o原生图像生成:奥特曼带梗图,AGI战场再燃战火
  • 阶段二:面向对象编程
  • 生活电子常识——cmd不能使用anaconda的python环境,导致输入python打开应用商店
  • 文件上传绕过的小点总结(6)
  • Linux之 权限提升(Linux Privilege Escalation)
  • 进程间通信 命名管道 ─── Linux第24课
  • 同旺科技USB to SPI 适配器 ---- 指令之间延时功能
  • SpringBoot分布式项目实战:观察者模式的高阶应用与避坑指南
  • JWT应用样例
  • 【Android】Activity 生命周期(详细介绍)