=============================================================

目前我看到的最详细的总结:!赞!!

=====================================================

补充一个还行的资料:

最近在玩学长给的一个资料档,里头有文字和数据混何在一起,要用Matlab来读取. 要是以前的话,大概就很笨的用手动的方式把文字去掉,再让Matlab来读. 不过最近才发现Matlab7的一个新指令textscan可以很方便的协助读取文字档中的字串与数据矩阵. 利用这个指令很快的就完成读取文字档中数个不同大小的数字矩阵了.

textscan指令在matlab的说明档找得到说明,在此就不赘言了,有空再写下相关的心得.

matlab网站: 关于各种读取指令的介紹

matlab网站: How can I read in mixed ASCII and numeric data?

举目前的资料档为例,首先头4行是文字,要忽略,接下来是123乘1个数据. 一开始我的写法是:

%skip strings (total 16 strings)

textscan(fid, '%*s', 16);

%read x axis

xs = fscanf(fid, '%f', [1 123]);

%*s代表跳过一个字串,然后反覆16次. textscan似乎会移动档案起始读取的pointer,所以fscanf会接着从第16个字串之后的资料开始读取,相当便利. xs为1x123的矩阵

另一种写法是

xs=cell2mat(textscan(f1,'%f',123,'HeaderLines',4));

当中在textscan中加入headerline表示要忽略若干行,在此为跳过4行再读取资料. 最后xs为123乘1的矩阵. textscan给的格式是cell,所以需要用cell2mat将之转成matrix.

资料档的最后有个123乘34的数据矩阵要读取. 最初我的写法为:

textscan(f1, '%*s', 13);

ez = fscanf(f1, '%f', [34 123]);

最后ez是34乘123的矩阵,转置后就是123x34原矩阵

另外一种改良的写法为:

FormatString=[repmat(' %f',1,34)];

ez = cell2mat(textscan(f1,FormatString,123,'HeaderLines',3));

实际上要忽略的行数只有2行,但是下参数的时候却一定要下3才会成功,可能是之前的数据尾端也算一行. 最后ez为123乘34的矩阵

若搭配上matlab网站的范例利用loop来侦测行数,使得读取资料档能变得更有弹性,不过在一般的状况,以上的方式已相当受用.

matlab glxs,Matlab中的textscan(转载整理)相关推荐

  1. matlab在activex中读取视频,[转载]matlab读取excel数据并显示在excel(activex控件)中

    figure; spreadsheet = actxcontrol('OWC11.Spreadsheet.11',[0 0 560 420]); M = {'abc', 123; 12.17, log ...

  2. matlab读int16读文件_[转载]Matlab中的textread textscan读取文本文件

    1.MATLAB从文本文件中读取格式化的数据函数是textread. 调用方式 [A,B,C,...] = textread('filename','format') [A,B,C,...] = te ...

  3. 转载:如何将一个新函数加到MATLAB函数库中

    如何将一个新函数加到MATLAB函数库中 nkszjx2 2017-09-29 11:25:26 13864 收藏 2 分类专栏: matlab 文章标签: matlab 库 </div> ...

  4. 聚类分析在SPSS、Matlab与R中的实现(转载: Liu Xuhua 机会的数学 )

    原文:https://mp.weixin.qq.com/s/1aBlwX11cBxw0sxONaHJRQ 笔记:修改后代码 ① a<-scan() 7.90 39.77  8.49 12.94 ...

  5. Matlab R2016b 版本配置+安装LIBSVM 呕心沥血整理全集

    Matlab R2016b 版本配置+安装LIBSVM 呕心沥血整理全集 目录 前言 LIBSVM安装包下载 安装编译器 测试安装是否成功 编译文件 测试使用 本文中参考到的博文 后记 前言 (一些废 ...

  6. c怎么调用matlab dll,matlab和c++调用DLL方法(最新整理)

    <matlab和c++调用DLL方法(最新整理)>由会员分享,可在线阅读,更多相关<matlab和c++调用DLL方法(最新整理)(6页珍藏版)>请在人人文库网上搜索. 1.M ...

  7. [Python+MATLAB] 在Python中使用MATLAB (持续更新中)

    文章目录 在Python中安装MATLAB引擎 官方介绍 个人介绍 结果演示 常见用法 一些tips: 使用Python能使用MATLAB的函数吗? 答案是可以的! The MATLAB Engine ...

  8. 设置matlab图像线框,matlab在图像中画长方形(框)

    function [state,result]=draw_rect(data,pointAll,windSize,showOrNot) % 函数调用:[state,result]=draw_rect( ...

  9. Matlab App Designer 中表格的操作

    本人最近在做MATLAB App designer相关的软件设计,本博客记录自己的学习日志,之后会增加各个控件的功能及操作介绍. UITable表控件 一.增加功能 function ButtonPu ...

  10. matlab读取txt到矩阵,如何在MATLAB中将文本文件中的数据读入矩阵(How to read data from a text file into a matrix in MATLAB)...

    如何在MATLAB中将文本文件中的数据读入矩阵(How to read data from a text file into a matrix in MATLAB) 我在将.txt文件读入单个矩阵时遇 ...

最新文章

  1. ultraedit java_UltraEdit配置java环境
  2. gVim 中文内容显示为乱码的解决办法
  3. 22 | 哈希算法(下):哈希算法在分布式系统中有哪些应用?
  4. SQL2005中row_number( )、rank( )、dense_rank( )、ntile( )函数的用法(2)
  5. uniapp开发原生android插件,获取浏览器cookie
  6. MessAPI V1.1.1 QQ音乐、网易云音乐、酷狗音乐、咪咕音乐、酷我音乐、百度音乐API接口
  7. 移动硬盘显示要格式化怎么办
  8. 无需重装系统,Windows Server 2019系统硬盘无损从MBR转换为GPT格式
  9. P1757 通天之分组背包题解
  10. 独享还是共享,你选择哪一种锁?(独享锁/共享锁)
  11. 1658页!又一份神级的Java手册面世
  12. 【计算机二级等级考试】公共基础知识-学习笔记
  13. java连接memcached_Memcached连接
  14. 使用python构建数据库_使用Python构建一个极简主义博客(或者,如何学习停止烦恼和热爱Web开发)。
  15. 用单片机控制步进电机
  16. Linux修改主机名必须要重启的问题
  17. 苹果手机几月份最便宜_1亿像素最便宜手机, 不是小米10, 网友: 这款手机拍照不错...
  18. 不溶性微粒检测显微计数法、电阻法、光阻法各有千秋
  19. 以计算机谈人文科学,人文科学系第二届师范生素质技能大赛(第二阶段)之“课堂片段教学信息技术组”总决赛...
  20. SqlServer不同数据库名的还原

热门文章

  1. RC523读身份证ID
  2. ios label 高度紫石英_iOS_NSMutableAttributedString和自适应宽度高度
  3. A3的PDF试卷怎么对半拆分成A4打印?
  4. 我的世界基岩版好还是java版好_我的世界:Java版本好玩还是基岩版好玩?老玩家看完后沉默了...
  5. 在Hisi3531环境中为wm8978芯片添加音量调节功能及测试
  6. Mac安装 nginx (极简)
  7. macbook重装系统 选择方案_Mac重装系统教程(二):网络在线重装系统
  8. 10068---谈谈Runtime类中的freeMemory,totalMemory,maxMemory几个方法
  9. 项目管理工具 - TAPD
  10. 多读少写的场景 如何提高性能