Matlab 矩阵基础

Matlab 基础

MATLAB 是"矩阵实验室matrix laboratory"的缩写。其他编程语言大多一次处理一个数字,MATLAB 主要用于处理整个矩阵和数组。

所有 MATLAB 变量都是多维数组,无论数据类型如何。矩阵是常用于线性代数的二维数组。

若要创建一个包含单行中四个元素的数组,请使用逗号(,)或空格分隔元素。

matlab 复制代码
a = [1 2 3 4]
result:
a = 1×4

     1     2     3     4

若要创建具有多行的矩阵,请用分号分隔行。

matlab 复制代码
a = [1 3 5; 2 4 6; 7 8 10]
a = 3×3

     1     3     5
     2     4     6
     7     8    10

另一种创建矩阵的方法是使用一个函数,比如ones, zeros或者 rand。例如,创建一个5乘1的零列向量。

matlab 复制代码
z = zeros(5,1)

z = 5×1

     0
     0
     0
     0
     0

用于乘法、除法和幂运算的矩阵运算符都有一个对应的阵列运算符,该运算符按元素方式进行运算。例如,将 a 的每个元素提高到第三次方:

python 复制代码
a.^3
ans = 3×3

           1          27         125
           8          64         216
         343         512        1000

点(.)用于访问矩阵的每个单独元素。

例: a ^ 3-> 取矩阵的每个元素,并将其提高到三次方。

访问数组中的元素

python 复制代码
A = [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
A = 4×4

     1     2     3     4
     5     6     7     8
     9    10    11    12
    13    14    15    16

有两种方法可以引用数组中的特定元素。最常见的方法是指定行和列下标,例如:

python 复制代码
A(4,2)= 14

不太常见但有时很有用的方法是使用一个下标按顺序遍历每一列:

python 复制代码
A(8) = 14

需要注意下标是从1开始的

若要引用数组的多个元素,请使用冒号运算符,该运算符允许指定表单 start: end 的范围。例如,列出 A 的前三行和第二列中的元素:

python 复制代码
A(1:3,2)
ans = 3×1

     2
     6
    10

只有冒号(没有开始值或结束值)指定该维度中的所有元素。例如,选择 A 的第三行中的所有列:

python 复制代码
A(3,:)
ans = 1×5

     9    10    11    12     0

清空命令

  • clc: 清除命令窗口
  • clear: 从工作区中删除元素,释放系统内存

Tips

当 Matlab 生成随机数时,它们并不是真正的随机数; 它们是基于伪随机数生成算法。Rng 命令控制此值的种子或起始点。"默认"值将其重置为 MATLAB 开始时的原始值; 这会随着时间的推移而发生变化。

如果执行 rand (10,1) ,然后调用 rng (' default') ,然后重复 rand 命令,就可以发现这种现象。它将生成完全相同的"随机"数字。

相关推荐
软件算法开发4 小时前
基于改进麻雀优化的LSTM深度学习网络模型(ASFSSA-LSTM)的一维时间序列预测算法matlab仿真
深度学习·matlab·lstm·一维时间序列预测·改进麻雀优化·asfssa-lstm
你怎么知道我是队长5 小时前
C语言---头文件
c语言·开发语言
期待のcode5 小时前
Java虚拟机的运行模式
java·开发语言·jvm
hqwest5 小时前
码上通QT实战25--报警页面01-报警布局设计
开发语言·qt·qwidget·ui设计·qt布局控件
a程序小傲5 小时前
京东Java面试被问:动态规划的状态压缩和优化技巧
java·开发语言·mysql·算法·adb·postgresql·深度优先
HellowAmy5 小时前
我的C++规范 - 玩一个小游戏
开发语言·c++·代码规范
徐先生 @_@|||6 小时前
Palantir Foundry 五层架构模型详解
开发语言·python·深度学习·算法·机器学习·架构
tang777897 小时前
爬虫如何绕过绕过“5秒盾”Cloudflare:从浏览器指纹模拟到Rust求解之不完全指南
开发语言·爬虫·rust·cloudflare
Yuer20257 小时前
什么是 Rust 语境下的“量化算子”——一个工程对象的最小定义
开发语言·后端·rust·edca os·可控ai
hqwest7 小时前
码上通QT实战26--系统设置01-系统设置布局
开发语言·qt·qss·qt基础控件·qt布局控件·qt表格控件