云计算百科
云计算领域专业知识百科平台

《Matlab教学建模方法与实践(第三章)》学习笔记——Matlab快速入门

目录

2.1快速入门案例

1. 利用Matlab从外界导入数据

2. 数据探索和建模

3. 发布

2.2 常用技巧

1. 常用标点的功能

2. 常用操作指令

3.指令编辑操作键

4. MATLAB数据类型

2.3 MATLAB 开发模式

1. 命令行模式

2. 脚本模式

3. 面向对象模式

4. 三种模式配合

2.1快速入门案例

1. 利用Matlab从外界导入数据

Step1.1 在当前文件夹中选取需要的数据文件,右击“导入数据”

Step1.2 点击“导入所选内容”

2. 数据探索和建模

Step2.1 查看数据统计信息:双击工作区,得到变量的详细统计信息

Step2.2 获取可视化结果:在工作区选中变量DataNum和Pclose,在“绘图”面板中单击plot图标,得到两个变量可视化结果,也可以在命令窗口区显示绘制此图的命令:

>> plot(DateNum,Pclose)

在Matlab中plot函数用于绘制二维线图,绘制横轴为X,竖轴为Y二维线图,Y值与X值一一对应

plot(X,Y)

如果 X 和 Y 都是向量,则它们的长度必须相同。plot 函数绘制 Y 对 X 的图。

如果 X 和 Y 均为矩阵,则它们的大小必须相同。plot 函数绘制 Y 的列对 X 的列的图。

如果 X 或 Y 中的一个是向量,而另一个是矩阵,则矩阵的各维中必须有一维与向量的长度相等。如果矩阵的行数等于向量长度,则 plot 函数绘制矩阵中的每一列对向量的图。如果矩阵的列数等于向量长度,则该函数绘制矩阵中的每一行对向量的图。如果矩阵为方阵,则该函数绘制每一列对向量的图。

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y1 = sin(x);
y2 = cos(x);
plot(x,y1,x,y2)
title('y1=sin(x), y2=cos(x)')
xlabel('X(m)')
ylabel('Y(m)')

Step2.3 利用多项式拟合命令

>> p = polyfit(DateNum,Pclose,1); %多项式拟合
>> value = p(1); %将斜率赋值给value
value =
0.1212

在MATLAB中polyfit函数是用来进行多项式拟合的。其数学原理是基于最小二乘法进行拟合的。具体使用语法是:

p = polyfit(x,y,n); % 其中x,y表示需要拟合的坐标点,大小需要一样; n表示多项式拟合的次数。 % 返回值p表示多项式拟合的系数,系数从高到低排列

Step2.4 用help查询的方法可以很快得到计算最大回撤的代码

>> MaxDD = maxdrawdown(Pclose); %计算最大回撤
>> risk = MaxDD %将最大回撤赋值给risk,作为股票风险
risk =
0.1155

Step2.5 重新选择数据文件并右击,在快捷菜单中选择“导入数据”项,选择“生成脚本”,并保存

Step2.6 从命令历史中选择有用的命令复制到 Step2.5 生成的脚本,得到完整脚本

3. 发布

展示形式:

①能独立运行的程序,比如脚本

②报告或论文(常见且使用)

③软件和应用(中大型项目)

Step3.1 在脚本编辑器的“发布”面板,从其下拉菜单中选择“编辑发布”选项,打开发布“编辑配置”界面

Step3.2 选择“输出文件格式”,默认html(word更常用,便于编辑,尤其是对于写报告或论文),然后单击“发布”按钮,就可以运行程序了,之后会得到一份详细的运行报告,包括目录、实现过程、主要结果、图。

2.2 常用技巧

1. 常用标点的功能
常用标点的功能

逗号(,)

显示计算结果的指令与其后面的指令之间的分隔;用作输入量与输入量 之间的分隔;用作数组元素的分隔

分号(:) 用作不显示计算结果指令的结尾标志;用作不显示计算结果的指令与其后面的 指令之间的分隔;用作数组行间的分隔
冒号(:) 用以生成一维数值数组;用作单下标援引时,表示全部元素构成的长列;用作多 下标援引时,表示对应维度上的全部元素
注释号(%) 由它起头的所有物理行被视为非执行的注释
单引号(‘’) 字符串标记符
圆括号( ) 在数组援引时用;函数指令时表示输入变量
方括号[ ]  输入数组时用;函数指令时表示输出变量
花括号{ }  元胞数组标记符
续行号(…) 由三个以上连续黑点构成。可视为其下的物理行是该行的逻辑继续,以构成一个较长的完整指令
2. 常用操作指令
常用操作指令

clc 清除指令窗口中显示的内容
clear 清除MATLAB工作空间中保存的变量
close all 关闭 所有打开的图形窗口
clf 清除图形窗的内容
edit 打开m文件编辑器
disp 显示变量的内容
3.指令编辑操作键
前寻调回已输入过的指定行
后寻调回已输人过的指定行
Tab 补全命令
4. MATLAB数据类型

元胞数组是MATLAB中的一种特殊数据类型,可以将元胞数组视为无所不包的通用矩阵,或叫广义矩阵。组成元胞数组的元素可以是任何数据类型的常数或常量,每个元素也可以具有不同的尺寸和内存占用空间,每个元素的内容也可以完全不同。

表在支持数据类型方面与元胞数组相似,能包含所有数据类型,但表在展示数据操作数据上更有优势。

2.3 MATLAB 开发模式

1. 命令行模式

即在命令行窗口区进行交互式的开发模式。命令行模式非常灵活,并且能够很快给出结果。所以适合单个的小型科学计算问题的求解,比如解方程、拟合曲线等操作;也比较适合项目的探索分析、建模等工作,比如在入门案例中介绍的数据绘图、拟合,求最大回撤。命令行模式的缺点是不便于重复执行,也不便于自动化执行科学计算任务。

2. 脚本模式

脚本模式是MATLAB最常见的开发模式,在该模式,我们可以很方便地进行代码的修改,也可以继续更复杂的任务。脚本模式的优点是便于重复执行计算,并可以将整个计算过程保存在脚本中,移植性比较好,同时也非常灵活。

3. 面向对象模式

面向对象编程是一种正式的编程方法,它将数据和相关操作(方法)合并到逻辑结构(对象)中。该方法具有可提升管理软件复杂性的能力,在开发和维护大型应用与数据结构时尤为重要。 能够在MATLAB中定义类并应用面向对象的标准设计模式,可实现代码重用继承、封装以及参考行为,。MATLAB面向对象开发模式更适合稍微复杂一些的项目,更有效地组织程序的功能模块,便于项目的管理、重复使用,同时使得项目更简洁,更容易维护。

4. 三种模式配合

三种开发模式并不是孤立的,而是相互配合、不断提升的。在项目初期,基本以命令行的脚本模式为主,逐渐形成脚本;随着成熟度天生,就要使用面向对象的开发模式,将功能模块改写成函数的形势,加强程序重复调用。  

赞(0)
未经允许不得转载:网硕互联帮助中心 » 《Matlab教学建模方法与实践(第三章)》学习笔记——Matlab快速入门
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!