1.2 MATLAB基础概述

1.2.1 MATLAB的影响

MATLAB源于Matrix Laboratory,即矩阵实验室,是由美国Mathworks公司发布的主要面对科学计算、数据可视化、系统仿真以及交互式程序设计的高科技计算环境。自1984年该软件推向市场以来,历经30多年的发展与竞争,现已成为适合多学科、多种工作平台的功能强大的大型软件。MATLAB应用广泛,其中包括信号处理和通信、图像和视频处理、控制系统、测试和测量、计算金融学及计算生物学等众多应用领域。在国际学术界,MATLAB已经被确认为是准确、可靠的科学计算标准软件,在许多国际一流学术期刊上都可以看到MATLAB的应用文章。在欧美各高等院校,MATLAB已经成为线性代数、数字信号处理、金融数据分析、动态系统仿真等课程的基本教学工具,成为学生必须掌握的基本技能。MATLAB软件的美国官方网站为http://www.mathworks.com,中国网站为http://cn.mathworks.com/。

1.2.2 MATLAB的特点与主要功能

自2006年以来,MATLAB在每年的3月与9月推出当年的a版本与b版本。在MATLAB(2014a)以后各版本中,只要在当前版本的命令行窗口中输入:ver,就可以看到当前版本的信息以及各种工具箱的版本号。每次推出的新版本都比前一个版本多一些新功能,可看到MATLAB的功能越来越强大。以下列举MATLAB(2014a)版本的主要功能特点,且本书中的程序都已通过MATLAB(2014a)中文版本的测试计算。

1)MATLAB是一个交互式软件系统,输入一条命令,立即就可以得出该命令的结果。

2)强大的数值计算能力。以矩阵作为基本单位,但无需预先指定维数(动态定维);按照IEEE的数值计算标准进行计算;提供丰富的数值计算函数,方便了用户与提高了计算效率;命令与数学中的符号、公式非常接近,可读性强,容易掌握。

3)数据图示功能。提供了丰富的绘图命令,能实现点、线、面与立体的一系列可视化操作。

4)编程功能。具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。

5)Notebook功能。Notebook实现Word和MATLAB无缝连接,从而为专业科技工作者创造了融科学计算、图形可视、文字处理于一体的高水准环境。

6)丰富的工具箱。工具箱是用MATLAB的基本语句编成的各种子程序集,用于解决某一方面的专门问题或实现某一类的新算法。工具箱可分为功能型和领域型工具箱。功能型工具箱主要用来扩充MATLAB的符号计算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能,能用于多种学科。领域型工具箱专业性很强,如统计工具箱(Statistics Toolbox)、优化工具箱(Optimization Toolbox)、曲线拟合工具箱(Curve Fitting Toolbox)、神经网络工具箱(Neural Network Toolbox)、金融工具箱(Financial Toolbox)、控制系统工具箱(Control System Toolbox)、信号处理工具箱(Signal Processing Toolbox)等。

1.2.3 MATLAB主界面与常用窗口

有以下两种MATLAB启动方法:在安装有MATLAB的计算机上双击Windows桌面上的快捷图标,或从“开始”菜单的“程序”子菜单中选择“MATLABMATLAB 2014a”。

通常情况下,MATLAB的主界面(如图1-1所示)由6部分组成,即主页工具栏、命令行窗口、工作区窗口、命令历史记录窗口、当前文件夹窗口以及当前已选择的文件详细信息。

图1-1 MATLAB R2014a主界面

1)主页工具栏。主页工具栏分若干个功能模块,包括文件的新建、打开、查找等;数据的导入、保存工作区、新建变量等;代码分析、程序运行、命令清除等;窗口布局;预设MATLAB部分工作环境、设置当前工作路径;系统帮助;附加功能等。

例如,选择主页工具栏的“新建脚本”,系统弹出编辑器窗体,该窗体结构和主窗口结构类似,其中在编辑器窗口中实现脚本文件的编写、调试等(如图1-2所示),且在编辑过程中支持右键下拉菜单,具有Windows一般应用程序所具有的“复制”、“粘贴”、“全选”等功能。

2)命令行窗口(Command Window)。命令行窗口是对MATLAB进行操作的主要载体,默认情况下启动MATLAB时就会打开命令行窗口,显示形式如图1-1所示。其主要功能为数值计算、函数参数设定、函数调用及其结果输出。一般来说,MATLAB的所有函数和命令都可以在命令行窗口中执行。

例如,在命令行窗口中输入“sin(pi/5)”,然后按“Enter”键,则会得到输出结果“ans=0.5878”(如图1-3所示)。图中符号“〉〉”所在的行可输入命令,没有符号“〉〉”的行显示结果。

图1-2 编辑器窗体

图1-3 命令行窗口中输入命令

注意:在MATLAB命令行操作中,有一些键盘按键可以提供特殊而方便的编辑操作。比如“↑”可用于调出前一个命令行,“↓”可调出后一个命令行,这样避免了重新输入的麻烦。当某命令记忆不清时,输入若干首字母并按下“Tab”键,可用于联想该命令的提示。

图1-4 命令历史记录窗口下拉菜单

3)命令历史记录(Command History)窗口。该窗口记录着用户每一次开启MATLAB的时间,以及每一次开启MATLAB后,在MATLAB指令窗口中运行过的所有指令行,窗口右上角的下拉式菜单提供了不同的快捷操作命令(如图1-4所示)。这些指令行记录可以被复制到指令窗口中再运行,从而减少了重新输入的麻烦。选中该窗口中的任一指令记录,然后单击鼠标右键,则可根据菜单进行相应操作。或者双击某一行命令,也可在命令行窗口中执行该命令(如图1-5所示)。

4)工作区(Workspace)窗口。在工作区窗口中将显示所有目前保存在内存中的MATLAB变量的变量名及其对应的数据结构、字节数以及类型,而不同的变量类型分别对应不同的变量名图标,窗口右上角的下拉式菜单提供了不同的快捷操作命令(如图1-6所示)。选中一个变量,单击鼠标右键则可根据菜单进行相应的操作(如图1-7所示)。

图1-5 命令历史记录窗口的

右键操作 

 

图1-6 工作区窗口下拉菜单

 

图1-7 工作区窗口的操作

5)当前文件夹(Current Directory)窗口。在当前文件夹窗口中可显示或改变当前文件夹,还可以显示当前文件夹下的文件,包括文件名、文件类型、最后修改时间以及该文件的说明信息等,并提供搜索功能(如图1-8所示)。MATLAB只执行当前目录或搜索路径下的命令、函数与文件。

当用户在MATLAB命令行窗口输入一条命令后,MATLAB按照一定次序寻找相关的文件。基本的搜索过程是:①检查该命令是不是一个变量;②检查该命令是不是一个内部函数;③检查该命令是否为当前目录下的M文件;④检查该命令是否是MATLAB搜索路径中其他目录下的M文件。

用户可以将自己的工作目录列入MATLAB搜索路径,从而将用户目录纳入MATLAB系统统一管理。用对话框设置搜索路径的操作过程是:①在主页工具条中选择“设置路径”,将出现搜索路径设置对话框。②通过“添加文件夹”或“添加并包含子文件夹”按钮将指定路径添加到搜索路径列表中。③在修改完搜索路径后,需要将其保存。

6)图形(Figure)窗口。在运行含有绘图命令的程序时,会产生一个与命令行窗口隔离的图形窗口,并在该窗口中绘制图形(见图1-9所示)。图形窗口与其他窗口类似,有菜单栏与工具栏,能实现图形的编辑、修饰、存储等功能。例如:

图1-8 当前文件夹浏览器窗口

 

图1-9 图形窗口及曲线

t=0 :pi/100:2*pi;

y=sin(t);

plot(t,y)   %绘图命令plot,绘制正弦曲线

grid on

1.2.4 MATLAB的联机帮助

MATLAB和其他高级语言一样,具有完善的帮助系统。通过主页工具栏上的帮助按钮“?”,按下该按钮将打开帮助浏览器(如图1-10所示),在“搜索文档”栏内输入需要查询的命令等,即可获得相关命令的帮助文档。也可将光标放在命令行窗口的提示符“〉〉”右边,按下键盘上的“F1”键,会弹出悬浮的帮助浏览器窗口。

图1-10 帮助导航/浏览器窗口

如果知道所需函数的名称(例如,rand功能为生成在\[0,1\]区间上服从均匀分布的随机数、正弦函数sin),但不知道具体的函数语法,可以使用以下三种方法获取帮助。

1)在命令行窗口或编辑器窗口中,将光标放置在函数名上,按下“F1”键,即可获得函数的说明文档。例如,获取“rand”的帮助如图1-11所示。

2)在命令行窗口中,输入“doc+函数名”的方法查看说明文档。

例如,输入“doc rand”,结果打开帮助浏览器窗口如图1-12所示。

图1-11 按“F1”键获取帮助

 

图1-12 输入“doc+函数名”获取帮助

3)在命令行窗口中,输入“help+函数名”的方法查看简要说明,此时说明信息在命令行窗口中出现,通过超链接可查看详细帮助信息。

例如,输入“help sin”,则输出简要帮助信息如下:

sin - Sine of argument in radians

This MATLAB function returns the sine of the elements of X.

Y = sin(X)

sin 的参考页

另请参阅 asin, asind, sind, sinh

名为 sin 的其他函数

fixedpoint/sin, symbolic/sin

(注:带下划线的为超链接提示。)

以上三种方法获得的帮助信息主要内容为相关函数的功能、使用方法、输入参数与输出参数、使用示例以及函数的算法说明,比如算法来源于哪篇论文等信息。另外,MATLAB支持模糊查询,用户只需要输入命令的前几个字母,然后按“Tab”键,系统就会列出所有以这几个字母开头的命令。

1.2.5 工具箱及其在线帮助

MATLAB有丰富的工具箱,每个工具箱的使用功能都可获得系统的在线帮助。MATLAB数据分析常用到的工具箱主要有:统计工具箱、优化工具箱、曲线拟合工具箱、神经网络工具箱等。

统计工具箱可以对数据进行组织、分析和建模;提供与统计分析、机器学习相关的算法以及工具。用户可以使用回归以及分类分析来进行预测建模、生成随机序列(蒙特卡罗模拟),同时使用统计分析画图工具可以对数据进行前期的探索研究或者进行假设性检验。在分析多维数据时,统计工具箱可以通过连续特征选择、主成分分析、正规化和收缩、偏最小二乘回归分析法使用户筛选出对模型影响最主要的变量。该工具箱同时还提供有监督、无监督的机器学习算法,包括支持向量机(SVM)、决策树、K均值聚类、分层聚类、K近邻聚类搜索、高斯混合、隐马尔科夫模型等。

在帮助浏览器的主页面上选择统计工具箱(Statistics Toolbox)项,进入如图1-13所示的帮助页面。该页面分两栏,左栏中列举了统计功能的条目,右栏中列举了统计功能条目下的详细功能。

图1-13 统计工具箱帮助系统

左栏中的统计功能如下:

①探索性数据分析;

②概率分布;

③假设检验;

④回归分析和方差分析;

……

若在右侧栏中选择实验数据分析(Exploratory Data Analysis),则出现以下功能列举:

①数据导入导出;

②数据类型;

③描述性统计;

④统计可视化;

……

熟练使用MATLAB帮助查询,将大大提高使用MATLAB的效率与编程速度。

优化工具箱主要提供用于在满足给定的约束条件时寻找最优化的解的相关函数,主要包含线性规划、混合整数线性规划、二次规划、非线性最优化、非线性最小平方问题的求解函数。在该工具箱中,用户可以针对连续型、离散型问题寻求最优解决方法,使用权衡分析法进行分析,或者在算法和应用中融合多种优化方法,从而达到较好的分析效果。进入优化工具箱在线帮助系统的界面如图1-14所示。

图1-14 优化工具箱帮助系统

曲线拟合工具箱提供了用于拟合曲线和曲面数据的应用程序和函数。使用该工具箱可以执行探索性数据分析、预处理和后处理数据、比较候选模型、删除偏值。可以使用附带的线性和非线性模型库进行回归分析,也可以指定自行定义的方程式。该库提供了优化的解算参数和起始条件,以提高拟合质量。该工具箱还提供非参数建模方法,比如样条、插值和平滑。在创建一个拟合之后,可以运用多种后处理方法进行绘图、插值和外推,估计置信区间,计算积分和导数。进入曲线拟合工具箱在线帮助系统的界面如图1-15所示。

神经网络工具箱提供的函数以及应用可以用于复杂的、非线性系统的建模。它不仅支持前馈监督式学习、径向基和动态网络,同时还支持组织映射和竞争层形式的非监督式学习。利用该工具箱,用户可以创建、训练、可视化和模拟仿真神经网络,可以进行分类、回归、聚类、降维、时间序列预测、动力系统建模与控制。在处理海量数据时,还可以考虑使用数据分布式以及分布式计算功能、图形处理器(GPU)功能、集群计算以及并行计算工具箱。进入神经网络工具箱在线帮助系统的界面如图1-16所示。

图1-15 曲线拟合工具箱帮助系统

图1-16 神经网络工具箱帮助系统

MATLAB 数据分析方法(第2版)1.2 MATLAB基础概述相关推荐

  1. MATLAB 数据分析方法(第2版) 1.1 数据分析与MATLAB

    第1章 MATLAB基础 MATLAB数据分析方法 本章主要介绍MATLAB软件的一些入门知识,包括MATLAB界面及其基本操作.变量与函数.运算符与操作符.矩阵数据的输入与输出.符号运算.M文件与编 ...

  2. MATLAB数据分析方法第2章数据描述性分析

    2.1 基本统计量与数据可视化 1.均值.中位数.分位数.三均值 均值.中位数:mean(A).media(A) 分位数:prctile(A,P),P∈[0,100] prctile(A,[25,50 ...

  3. MATLAB 数据分析方法(第2版)2.3 数据变换

    2.3 数据变换 2.3.1 数据属性变换 在解决经济问题综合评价时,评价指标通常分为效益型.成本型.适度型等类型.效益型指标值越大越好,成本型指标值越小越好,适度型指标值既不能太大也不能太小为好. ...

  4. MATLAB 数据分析方法(第2版)1.3 MATLAB基本语法

    1.3 MATLAB基本语法 1.3.1 数据类型 MATLAB中的基本数据类型有15种,主要是整型.浮点.逻辑.字符.日期和时间.结构数组.单元格数组以及函数句柄等.不论数据是怎样的类型,在计算机程 ...

  5. MATLAB 数据分析方法(第2版)2.1 基本统计量与数据可视化

    第2章 数据描述性分析 数据描述性分析是从样本数据出发,概括分析数据的集中位置.分散程度.相互关联关系以及数据分布的正态或偏态特征等.它是进行数据分析的基础,对不同类型量纲的数据有时还要进行变换,然后 ...

  6. MATLAB数据分析(插值运算和曲线拟合)

    MATLAB数据分析(插值运算和曲线拟合) MATLAB数据分析 在数学研究和工程应用中,我们常常需要对某些环节进行反复的测验或测试,以获取更多的数据支持最优决策,但是由于环境条件的限制,我们往往只能 ...

  7. 3D游戏引擎设计 实时计算机图形学的应用方法 第2版 pdf 带索引书签目录

    3D游戏引擎设计  实时计算机图形学的应用方法  第2版 目录 第1章 概述 1.1 图形硬件和游戏发展史 1.2 本书版本与软件发展史 1.3 章节导读 第2章 图形系统 2.1 基础知识 2.1. ...

  8. 多尺度散布熵及其matlab实现方法

    一.多尺度散布熵的概念 多尺度散布熵是一种基于计算机的非线性时间序列分析方法,它可以用于描述时间序列的复杂性和非线性特征,适用于多种领域,如金融市场.医学.地质.工程等.多尺度散布熵将时间序列分解成多 ...

  9. 遗传:微生物组数据分析方法与应用

    本文版权归<遗传>杂志,已获授权,转载请联系杂志社 微生物组数据分析方法与应用 刘永鑫1,2,秦媛1,2,3,郭晓璇1,2,白洋1,2,3 1. 中国科学院遗传与发育生物学研究所,植物基因 ...

最新文章

  1. Measuring Similarity between Clusters (Clusters 之间相似度的测量)【未完待续】
  2. Python3爬虫之爬取某一路径的所有html文件
  3. Vue 安装 less
  4. JZOJ 5185. 【NOIP2017提高组模拟6.30】tty's sequence
  5. lyapunov指数 matlab计算_Matlab学习笔记1——B站台大课
  6. java web图片显示到浏览器
  7. Python 08 面向对象
  8. web前端安全编码(模版篇)
  9. python库skimage 图像直方图局部均衡化
  10. 计算机组成原理第七章测试题,计算机组成原理 课堂练习-第七章
  11. python填空题题库_Python题库——Python笔试填空题
  12. CH341应用升级为CH347软硬件注意事项
  13. 迪杰斯特拉--链式向前星
  14. 网易云音乐人申请教程(会唱歌即可)
  15. 框架与设计模式的区别
  16. Linux检查文件是否存在
  17. 〖Python接口自动化测试实战篇①〗- 自动化测试基础扫盲及项目的生命周期详述
  18. 小车自动往返工作原理_自动往返小车
  19. 【小学递归】杀鸡用牛刀——要用递归啊!
  20. CentOS7使用yum安装MySql并开启远程

热门文章

  1. 【100 种语言速成】第 2 节:Emojicode
  2. 四个程序员编辑器,编程必备!!!
  3. linux中数据库的4种状态,数据库的数据持久有几种方案_数据库_数据管理_数据结构_课课家...
  4. 解决iperf发包高丢包率的问题
  5. css实现固定的图片比例
  6. 【苹果相册推】iMessage OBJC Serverapns源代码直接开发证书
  7. 看了后非常震撼---骗局
  8. abortonerror_DCB结构
  9. 超简单,用Python Pyecharts制作可视化大屏
  10. 节税指南|人才引进能节税?速教你掌握精髓!