机器学习(MACHINE LEARNING)MathWorks系列教程
文章目录
1 .m文件和 .mat文件的区别
.m文件和 .mat文件的区别为:性质不同、调用不同、解析不同。
1.1 性质不同
一、性质不同
1、.m文件:.m文件是保存一段代码zd的文件,类似于C语言中的一个函数体; 这也是MATLAB中最常见的文件内保存格式之一。
2、.mat文件:.mat文件是matlab的数据存储的标准格式。也就是操作产生的数据的一个集合包,可以把一次处理的结果保存,供下一次使用。
1.2 调用不同
二、调用不同
1、.m文件:.m文件可以直接用来执行调用。
2、.mat文件:.mat文件不可以直接用来执行,需要通过load命令调用。
2 format函数
请注意,解包含虚数 i,这是 MATLAB 中的内置常量。
在命令行窗口中仅显示前四个小数位。您可以使用 format 函数控制显示的精度。
请试着输入 format long 并显示 x 的值。
输入 format short 可切换回默认显示。
3 .*的区别
1、在进行数之间的运算时“.”和“”是没有区别的,都是表示普通的乘法运算。例:m = 2,n = 3,m.n = 6, mn = 6。
2、在进行矩阵之间的运算时“.”和“”的意义就有所不同了。假设a,b表示两个矩阵,a*b表示矩阵a与矩阵b进行矩阵相乘,a.*b表示矩阵a中的元素与矩阵b中的元素按位置依次相乘,得到的结果将作为新矩阵中相同位置的元素
4 绘图案例
plot(yrs,res,"b--")
hold on
plot(yrs,comm,"k:")
plot(yrs,ind,"m-.")
hold off
5 导入工具
6 逻辑索引
您可以使用逻辑数组作为数组索引,在这种情况下,MATLAB 会提取索引为 true 的数组元素。以下示例将会提取 v1 中大于 6 的所有元素。
v = v1(v1 > 6)
v =
6.6678
9.0698
7 恒星运动
load starData
nObs = size(spectra,1)
lambdaStart = 630.02
lambdaDelta = 0.14
Task 1
lambdaEnd = lambdaStart + (nObs-1)*lambdaDelta
lambda = (lambdaStart:lambdaDelta:lambdaEnd)'
Task 2 & 7
s = spectra(:,3)
Task 3
loglog(lambda,s,".-")
xlabel("Wavelength")
ylabel("Intensity")
Task 4
[sHa,idx] = min(s)
lambdaHa = lambda(idx)
Task 5
hold on
loglog(lambdaHa,sHa,"rs","MarkerSize",8)
hold off
Task 6
z = lambdaHa/656.28 - 1
speed = z*299792.458
Task 1
[sHa,idx] = min(spectra);
lambdaHa = lambda(idx);
z = lambdaHa/656.28 - 1;
speed = z*299792.458
Tasks 2 - 4
for c = 1:7
s = spectra(:,c);
if speed(c) <= 0
loglog(lambda,s,"--")
else
loglog(lambda,s,"LineWidth",3)
end
hold on
end
hold off
Task 5
legend(starnames)
Task 6
movaway = starnames(speed > 0)
8 loglog
loglog(x,y)
x 轴和y 轴均为对数刻度(Logarithmic Scale)
semilogx(x,y) semilogx(x,y)
x 轴为对数刻度,y 轴为线性刻度
semilogy(x,y) semilogy(x,y)
x 轴为线性刻度,y 轴为对数刻度
双对数坐标图可以放大细微的变化
9 摘要
基本语法
示例 说明
x = pi 使用等号 (=) 创建变量。
左侧 (x) 是变量的名称,其值为右侧 (pi) 的值。
y = sin(-5) 您可以使用括号提供函数的输入。
桌面管理
函数 示例 说明
save save data.mat 将当前工作区保存到 MAT 文件中。
load load data.mat 将 MAT 文件中的变量加载到工作区。
clear clear 清除工作区中的所有变量。
clc clc 清除命令行窗口中的所有文本。
format format long 更改数值输出的显示方式。
数组类型
示例 说明
4 标量
[3 5] 行向量
[1;3] 列向量
[3 4 5;6 7 8] 矩阵
等间距向量
示例 说明
1:4 使用冒号 (:) 运算符,创建一个从 1 到 4,间距为 1 的向量。
1:0.5:4 创建一个从 1 到 4,间距为 0.5 的向量。
linspace(1,10,5) 创建一个包含 5 个元素的向量。这些值从 1 到 10 均匀间隔。
创建矩阵
示例 说明
rand(2) 创建一个 2 行 2 列的方阵。
zeros(2,3) 创建一个 2 行 3 列的矩形矩阵。
索引
示例 说明
A(end,2) 访问最后一行的第二列中的元素。
A(2,:) 访问第二行所有元素。
A(1:3,:) 访问前三行的所有列。
A(2) = 11 将数组中第二个元素的值更改为 11。
数组运算
示例 说明
[1 1; 1 1]*[2 2;2 2]
ans =
4 4
4 4 执行矩阵乘法。
[1 1; 1 1].*[2 2;2 2]
ans =
2 2
2 2 执行按元素乘法。
多个输出
示例 说明
[xrow,xcol] = size(x) 将 x 中的行数和列数保存为两个不同变量。
[xMax,idx] = max(x) 计算 x 的最大值及其对应的索引值。
文档
示例 说明
doc randi 打开 randi 函数的文档页。
绘图
示例 说明
plot(x,y,"ro-","LineWidth",5) 绘制一条红色 (r) 虚线 (--)
并使用圆圈 (o) 标记,线宽很大。
hold on 在现有绘图中新增一行。
hold off 为下一个绘图线条创建一个新坐标区。
title("My Title") 为绘图添加标签。
使用表
示例 说明
data.HeightYards 从表 data 中提取变量 HeightYards。
data.HeightMeters = data.HeightYards*0.9144 从现有数据中派生一个表变量。
逻辑运算
示例 说明
[5 10 15] > 12 将向量与值 12 进行比较。
v1(v1 > 6) 提取 v1 中大于 6 的所有元素。
x(x==999) = 1 用值 1 替换 x 中等于 999 的所有值。
编程
示例 说明
if x > 0.5
y = 3
else
y = 4
end 如果 x 大于 0.5,则将 y 的值设置为 3。
否则,将 y 的值设置为 4。
for c = 1:3
disp(c)
end 循环计数器 (c) 遍历
值 1:3(1、2 和 3)。
循环体显示 c 的每个值。
上一篇: Mysql下载安装、部署与图形化详细操作教程_MySQL
下一篇: redis集群的搭建
推荐阅读
-
Feature Selection For Machine Learning in Python (Python机器学习中的特征选择)
-
基于机器学习(machine learning)的SEO实战日记2--寻找切入点
-
基于机器学习(machine learning)的SEO实战日记4--数据抓取
-
基于机器学习(machine learning)的SEO实战日记1--序言
-
基于机器学习(machine learning)的SEO实战日记6--训练集准备
-
基于机器学习(machine learning)的SEO实战日记3--构思
-
基于机器学习(machine learning)的SEO实战日记5--分词与词频计算
-
Python机器学习 (Python Machine Learning 中文版 PDF)
-
模式识别中的机器学习与数据挖掘Machine learning and data mini
-
当SAP云平台account的service Marke place里找不到Machine Learning服务该怎么办 SAP Cloud PlatformSAP云平台SAP机器学习人工智能