使用matlab处理INCF采集数据,mdf(.dat)格式文件,并将将其写入excel文件

最近在做某汽车公司关于汽车标定的数据。数据通过INCA采集,保存为.dat格式。数据可以通过measure data analyzer图形化显示,并导出为其他格式,但是软件下载麻烦。使用matlab处理也很方便。

数据处理步骤

1.读取文件

// 添加项目路径到matlab中
folder ='要操作的文件路径';  % 要操作的文件夹
addpath( genpath(folder) );

2.使用mdf函数访问.dat文件

filename = '想要读取的文件名.dat';
mdfobj = mdf(filename);

读取过后即可在matlab的Workspace区域查看到mdfobj变量的内容,如下

其中ChannelNames中即为数据的特征名,但是由于数据采样时频率不同,导致数据被分成8个cell,每个cell中采样频率相同的特征。

3.接下去是如何读取每个cell中特征名下的值,由于数据格式和命名风格不同,使用一段函数读取数据

%该函数用于查找mdf文件中的变量,并输出数据和对应的时间
function[data,time] = data_time_output(Variable,mdfobj)i=1;ChannelLength=length(mdfobj.ChannelNames);for i=1:ChannelLengthPositionVariableLogic=strcmp(mdfobj.ChannelNames{i},Variable);%在频道i中查找对应的Variable,并输出该频道中的每个cell是否含有该Variable对应的逻辑值,如果这个频道中有该Variable,则输出1,如没有则输出0PositionVariable=find(PositionVariableLogic);%FINDposition,找到对应的位置if PositionVariable>0[data, time] = read(mdfobj, i, Variable, 1, 1000000000, 'OutputFormat', 'vector');else continueendend
end

4.调用函数,读取数据

//Variable是想要读取的特征
Variable = 'C_3_0_217\CAN-Monitoring: 1';
[data,time] = data_time_output(Variable, mdfobj);
varNames = {Variable};

5.将读取到的数据写入excel中

//table函数将特征名和数值组合成同一列
T = table(data,'VariableNames',varNames);
writetable(T, '2021-11-18_09.31.59_k1_valve_dither_test_20.0bar_100Hz_250mA.csv','WriteRowNames',true)

6.一般一个cell中有多个特征,此时需要一个循环一次读出cell中全部数据

//程序中数字1为第一个cell
for i=1:length(mdfobj.ChannelNames{1})Variable = mdfobj.ChannelNames{1}{i};[data,time] = data_time_output(Variable, mdfobj);
`  varNames = {Variable};T = table(data,'VariableNames',varNames);H(:,i)=T; //这个地方如果不用H只能将cell中最后一列写入表中,暂时没有好的办法,如果有人知道请留言,谢谢
end
writetable(H, '想要写入的表名.xlsx','WriteMode','Append','WriteRowNames',true)

更多关于table和writetable函数的用法可自行查阅matlab帮助文档


使用matlab处理INCF采集数据,mdf(.dat)格式文件,并将将其写入excel文件相关推荐

  1. python xlwt写入数据超过范围限制_用xlrd包读取Excel文件-尽量不用xlwt包写入Excel文件最多能支持65536行数据。...

    1. 引有包 import xlrd1 打开文件 data = good_ivy = xlrd.open_workbook(r'商品库存.xls')1 2 获取你要打开的sheet文件 # table ...

  2. matlab signaltap,一种matlab调用signaltap采集数据的方法

    [导读] 一种matlab调用signaltap采集数据的方法关键词: AD采集MatlabFPGA 最近,在利用FPGA采集数据,前端是通过AD采集,然后直接输出给FPGA,需要分析采集到的数据,通 ...

  3. MATLAB处理串口采集数据

    MATLAB处理串口采集数据 加速度计反馈X/Y/Z轴数据,并通过串口输出,其中第2,3,4字节为X轴数据高位,中位,低位数据,第5,6,7字节为Y轴数据高位,中位,低位,第8,9,10字节为Z轴数据 ...

  4. matlab 循环写excel文件,matlab数据自动循环写入excel文件

    功能说明: 1.表格第一行(1)要留着添加表头描述,同时也可以随时向表格手工添加数据,因此不能用计数进行循环 第一列(A)为时间戳字符串(如20150413123415).每次运行程序就存储一次数据, ...

  5. R语言write.xlsx函数将数据写入Excel文件:写入Excel文件并自定义表单的名称、将数据写入Excel文件新的表单(sheet)中、将文件保存为xls文件格式(而不是xlsx)

    R语言write.xlsx函数将数据写入Excel文件:写入Excel文件并自定义表单的名称.将数据写入Excel文件新的表单(sheet)中.将文件保存为xls文件格式(而不是xlsx) 目录

  6. python 数据处理----读取txt 一列数据写入excel 文件

    将txt数据从某一行开始写入excel文件中(例子为从Appthroughput写至excel_result1.xlsx中) import sys import random import time ...

  7. python处理多个excel数据_python 数据分析基础 day8-pandas读写多个excel文件

    今天是读<python数据分析基础>的第8天,今天的读书笔记的内容为利用pandas读写多个excel文件,当中涉及到读写excel文件的多个工作表. 大致原理如下: glob.glob( ...

  8. oracle写excel文件,ORACLE-将oracle数据库中数据写入excel文件

    ORACLE-将oracle数据库中数据写入excel文件主要实现思路: 1.声明一个纪录,用来存储导出的数据: 2.使用游标取数据到纪录中: 3.使用utl_file将纪录中的数据写入excel文件 ...

  9. Java工具总结:将数据内容写入excel文件

    Java工具总结:将数据内容写入excel文件 文章目录 Java工具总结:将数据内容写入excel文件 一.背景 二.功能描述 三.使用该工具类:Java代码演示 四.分析代码 4.1 几个重要的J ...

最新文章

  1. shell中的命令替换和变量替换
  2. 1. 自然语言处理描述
  3. 评分卡实战中的几个问题
  4. Scala可变数组ArrayBuffer:查询/修改/遍历/增加/删除
  5. EasyUI 分页 偶遇 问题
  6. vim多列操作--插入/删除
  7. Cannot modify header information问题的解决方法【新浪云经常遇到的错误】
  8. SSH连接原理及ssh-key
  9. CVPR2019,开源活体检测
  10. 【转】Build Your own Simplified AngularJS in 200 Lines of JavaScript
  11. java 核心API day05 File类
  12. python读取pcd文件_Python读取pcd点云文件
  13. 超级万能计算机在线应用,超级万能计算器手机版
  14. 实习期间的一些思考整理(2)2018.4.10~4.11
  15. 魔兽私服Trinitycore架构设计分析之一
  16. java 详细教程AXIS调用webservice(直接上代码)
  17. 桌面音乐频谱linux,X Music Spectrum(音乐频谱桌面特效)
  18. Jzoj4210 我才不是萝莉控呢
  19. 基于STM32单片机的语音播报超声波测距系统【ISD1820录放模块继电器蜂鸣器扬声器】
  20. [C++学习实验1]CMatrix类设计与实现

热门文章

  1. 【基础算法】概率算法 C++实现
  2. 2021年中国一次性血压计袖带市场趋势报告、技术动态创新及2027年市场预测
  3. 根据车辆品牌获取品牌所属公司,车标logo,创建年份等基本信息
  4. 线段树——区间累加、区间累乘、区间求和
  5. mfc实验报告心得体会_mfc实验报告
  6. 音视频解封装--解封装分离音频AAC文件
  7. Ansys Speos | 新型计算方法:使用 GPU 提升计算速率
  8. 网页调扫描仪扫描并显示
  9. PyWifi破解Wifi密码试验
  10. 30个最佳免费的CSS HTML登录表单模板