1. 文件读取

在编写一个matlab项目时候,通常要导入很多不同格式的数据,下面我们来学习不同的导入函数。
(1) 保存工作区
MATLAB支持工作区的保存。用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入。保存工作区可以通过菜单进行,也可以通过命令窗口进行。
1.保存整个工作区
选择File菜单中的SaveWorkspaceAs…命令,或者单击工作区浏览器工具栏中的Save,可以将工作区中的变量保存为MAT文件。
2.保存工作区中的变量
在工作区浏览器中,右击需要保存的变量名,选择SaveAs…,将该变量保存为MAT文件。
3.利用save命令保存
该命令可以保存工作区,或工作区中任何指定文件。该命令的调用格式**如下:**
●save:将工作区中的所有变量保存在当前工作区中的文件中,文件名为matlab.mat,MAT文件可以通过load函数再次导入工作区,MAT函数可以被不同的机器导入,甚至可以通过其他的程序调用。
●save('filename'):将工作区中的所有变量保存为文件,文件名由filename指定。如果filename中包含路径,则将文件保存在相应目录下,否则默认路径为当前路径。
●save('filename','var1','var2',...):保存指定的变量在filename指定的文件中。
●save('filename','-struct','s'):保存结构体s中全部域作为单独的变量。
●save('filename','-struct','s','f1','f2',...):保存结构体s中的指定变量。
●save('-regexp',expr1,expr2,...):通过正则表达式指定待保存的变量需满足的条件。
●save('...,'format'),指定保存文件的格式,格式可以为MAT文件、ASCII文件等。
**举个例子 save train.out sigg1 -ascii**

2. 数据导入

(1)MATLAB中导入数据通常由函数load实现,该函数的用法如下:

●load:如果matlab.mat文件存在,导入matlab.mat中的所有变量,如果不存在,则返回error。
●loadfilename:将filename中的全部变量导入到工作区中。**(注意名字是字符串变量而且有括号)**
●loadfilenameXYZ...:将filename中的变量X、Y、Z等导入到工作区中,如果是MAT文件,在指定变量时可以使用通配符“*”。
●loadfilename-regexpexpr1expr2...:通过正则表达式指定需要导入的变量。
●load-asciifilename:无论输入文件名是否包含有扩展名,将其以ASCII格式导入;如果指定的文件不是数字文本,则返回error。
●load-matfilename:无论输入文件名是否包含有扩展名,将其以mat格式导入;如果指定的文件不是MAT文件,则返回error.
(2)MATLAB中,另一个导入数据的常用函数为importdata,该函数的用法如下:
●importdata('filename'),将filename中的数据导入到工作区中;
●A=importdata('filename'),将filename中的数据导入到工作区中,并保存为变量A;
●importdata('filename','delimiter'),将filename中的
数据导入到工作区中,以delimiter指定的符号作为分隔符

3. 文件的打开

(1) MATLAB中可以使用open命令打开各种格式的文件,MATLAB自动根据文件的扩展名选择相应的编辑器。
需要注意的是open('filename.mat')和load('filename.mat')的不同,前者将filename.mat以结构体的方式打开在工作区中,后者将文件中的变量导入到工作区中,如果需要访问其中的内容,需要以不同的格式进行。
(2)文本文件的打开
在上一节中介绍的函数和命令主要用于读写mat文件,而在应用中,需要读写更多格式的文件,如文本文件、word文件、xml文件、xls文件、图像文件和音视频文件等。本节介绍文本文件(txt)的读写。其他文件的读写,用户可以参考MATLAB帮助文档。
常用的打开文本文件的函数如下:
csvread
读入以逗号分隔的数据
csvwrite
将数据写入文件,数据间以逗号分隔
dlmread
将以ASCII码分隔的数值数据读入到矩阵中
dlmwrite
将矩阵数据写入到文件中,以ASCII分隔
textread
从文本文件中读入数据,将结果分别保存
textscan
可以参考matlab帮助文档 具体的函数信息13.4利用界面工具导入数据

4. 从文本文件中读入数据

结果保存为单元数组。除前面几节介绍的函数外,也可以通过界面工具将数据导入到工作区中。本节介绍利用工作区浏览器中的工具导入数据。选择工作区浏览器工具栏中的“ImportData”,选择待导入的文件,这里我们选择了一个文本文件,其内容为逗号分隔的数字。

Matlab学习-(2)的更多相关文章

  1. Matlab学习笔记 figure函数

    Matlab学习笔记 figure函数 matlab中的 figure 命令,能够创建一个用来显示图形输出的一个窗口对象.每一个这样的窗口都有一些属性,例如窗口的尺寸.位置,等等.下面一一介绍它们. ...

  2. matlab学习笔记 bsxfun函数

    matlab学习笔记 bsxfun函数 最近总是遇到 bsxfun这个函数,前几次因为无关紧要只是大概看了一下函数体去对比结果,今天再一次遇见了这个函数,想想还是有必要掌握的,遂查了些资料总结如下. ...

  3. matlab学习笔记(一)单元数组

    matlab学习笔记(一)单元数组 1.floor(x) :取最小的整数 floor(3.18)=3,floor(3.98)=3 ceil(x)  :取最大的整数 ceil(3.18)=4,ceil( ...

  4. matlab学习笔记---(1)

    Matlab学习笔记 一. Desktop Basics (Matlab 基础知识) 当你打开Matlab的时候,matlab按照以下默认的方式展示出来. 该桌面主要包括以下几部分内容: 当前文件夹: ...

  5. 【数学建模】MATLAB学习笔记——函数式文件

    MATLAB学习笔记——函数式文件 引入函数式文件 说明: 函数式文件主要用于解决计算中的参数传递和函数调用的问题. 函数式的标志是它的第一行为function语句. 函数式文件可以有返回值,也可以没 ...

  6. MATLAB学习总结(1)

    MATLAB学习总结(1)   path help path cd(current directory) savepath pathtool

  7. matlab学习路线

    知乎:matlab学习路线 MATLAB数学教学视频

  8. Matlab学习笔记(一)—— 三维图形绘制

    这学期公选课选的是MATLAB,所以准备把这学期所学习的整理到博客上,作为记录,哇咔咔~ 一.三维函数图: x=cos(t), y=sin(t), z=t %≤t ≤*pi t=:*pi; %t的取值 ...

  9. Matlab学习笔记(1)

    在帮助文档中查看学习视频的时候.出现以下对话框,不能查看 解决办法:   在系统环境变量中找到Path.添加“%SystemRoot%\system32;%SystemRoot%;%SystemRoo ...

  10. matlab学习日志之并行运算

    原文地址:matlab并行计算,大家共同学习吧,涉及到大规模数据量处理的时候还是效果很好的 今天搞了一下matlab的并行计算,效果好的出乎我的意料. 本来CPU就是双核,不过以前一直注重算法,没注意 ...

随机推荐

  1. 图论-BFS-最小高度的树 Minimum Height Trees

    2018-09-24 12:01:38 问题描述: 对于一个具有树特征的无向图,我们可选择任何一个节点作为根.图因此可以成为树,在所有可能的树中,具有最小高度的树被称为最小高度树.给出这样的一个图,写 ...

  2. [math] Codeforces 597A Divisibility

    题目:http://codeforces.com/problemset/problem/597/A Divisibility time limit per test 1 second memory l ...

  3. PAT-B 1040. 有几个PAT(25)

    1040. 有几个PAT(25) 时间限制 120 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 字符串APPAPT中包含了两个单 ...

  4. 基于arduino、百度云、采用django、redis鱼缸在线监控

    大家好,今天我给大家分享一下之前做的一个鱼缸远程监控的案例,希望有人喜欢 首先给大家看一下结构框架,由于我之前买的arduino开发板不带wifi功能,所有是通过pc机转发一下上的百度云,最近我刚购买 ...

  5. OpenAI的GPT-2:用Python构建世界上最先进的文本生成器的简单指南

    介绍 "The world's best economies are directly linked to a culture of encouragement and positive f ...

  6. 线段树(区间合并)HDU - 1540

    题意:输入n,m,给定n个相互连通的村庄,有m个操作,D x,表示破坏x村庄使其与相邻的两个村庄不相通,R 表示修复上一个被破坏的村庄,与相邻的两个村庄联通.Q x表示与x相连的村庄有多少个. 思路: ...

  7. (连续的矩形)HDU - 1506

    题意:7 2 1 4 5 1 3 3  直接讲数据 :给出7个矩形的高,底长都为1,求最大的连通的矩形块的面积 思路:如果暴力的话肯定超时,有一个特别巧妙的预处理,如果我们知道每一个矩形的左右两边能延 ...

  8. coding++:Java 中Model 与 实体的区别

    model的字段>entity的字段,并且model的字段属性可以与entity不一致,model是用于前端页面数据展示的,而entity则是与数据库进行交互做存储用途. 举个例子: 比如在存储 ...

  9. coding++ :javascript Date format (js日期格式化)

    方式一: // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1 ...

  10. Java多线程工具类之循环栅栏计数器

    Java多线程下循环计数器 本文主要内容:CyclicBarrier(下文中凯哥就用cycBar来代替)定义介绍:举例说明:代码演示:从源码来看原理及总结:CyclicBarrier与CountDow ...