③matlab向量和矩阵

目录

手动输入数组

创建等间距向量

数组创建函数


手动输入数组

1.背景

单个称为标量的数值实际上是一个 1×1 数组,也即它包含 1 行 1 列。

任务

创建一个名为 x 并且值为 4 的变量。

2.您可以使用方括号创建包含多个元素的数组。

复制代码
x = [3 5]
x = 
    3    5

任务

创建一个名为 x 的数组,其中包含两个元素:79

3.当您用空格(或逗号)分隔数值时(如前面的任务中所示),MATLAB 会将这些数值组合为一个行向量 ,行向量是一个包含一行多列的数组 (1×n )。当您用分号分隔数值时,MATLAB 会创建一个列向量 (n×1)。

复制代码
x = [1;3]
x = 
    1
    3

任务

创建一个名为 x 的数组,其中包含两个元素 79,且两个元素位于同一 中。

试着复制以前的命令,并将数值之间的空格改为分号 (;)。

4.任务

创建一个名为 x 的行向量,其中依次包含值 3105

5.任务

创建一个名为 x 的列向量,其中依次包含值 82-4

6.您可以组合使用空格和分号来创建一个矩阵,即包含多行多列的数组。输入矩阵时,您必须逐行输入它们。

复制代码
x = [3 4 5;6 7 8]
x = 
    3    4    5
    6    7    8

任务

创建一个名为 x 的矩阵,其中包含的值如下所示。

复制代码
5    6    7
8    9   10

7.在 MATLAB 中,您可以在方括号内执行计算。

复制代码
x = [abs(-4) 4^2]
x = 
     4    16

任务

创建一个名为 x 的行向量,其中第一个元素为 sqrt(10),第二个元素为 pi^2 (π2)。

附加练习

数组在 MATLAB 中的使用非常普遍。事实上,MATLAB 是 MATrix LABoratory 的缩写。您会发现大多数 MATLAB 功能可以同时处理多个值。

创建数组时有一定的灵活性。例如,可通过以下几种有效方法来创建同一数组:

复制代码
x = [7 9]
x=[7,9]
x = [7, 9]

试着用空格、逗号和分号来创建以下矩阵:

创建等间距向量

1.我们经常需要创建一些包含等间距数值的向量,例如以下向量。

复制代码
y = [5 6 7 8]
y = 
    5    6    7    8

任务

创建一个名为 x 的行向量,其中依次包含值 1、2 和 3。

2.对于长向量,输入单个数值是不实际的。可用来创建等间距向量的替代便捷方法是使用 : 运算符并仅指定起始值和最终值。

复制代码
y = 5:8
y = 
    5    6    7    8

请注意,当您使用冒号运算符时,不需要方括号。

任务

创建一个名为 x 的行向量(包含值 1、2、3 和 4),但这次使用 : 运算符。

2.: 运算符使用默认的间距 1,但是您可以指定您自己的间距,如下所示。

复制代码
x = 20:2:26
x = 
    20    22    24    26

任务

创建一个名为 x 的行向量,该向量以 1 开头,以 5 结尾,每个元素的间距为 0.5

4.任务

创建一个名为 x 的行向量,该向量以 3 开头,以 13 结尾,每个元素的间距为 2

5.如果您知道向量中所需的元素数目(而不是每个元素之间的间距),则可以改用 linspace 函数:

复制代码
linspace(first,last,number_of_elements)

注意,请使用逗号 (,) 分隔 linspace 函数的输入。

复制代码
x = linspace(0,1,5)
x = 
    0    0.250    0.500    0.750    1.000

任务

创建一个名为 x 的行向量,该向量以 1 开头,以 10 结尾,共包含 5 个元素。

6.linspace: 运算符都可创建行向量。但是,您可以使用转置运算符 (') 将行向量转换为列向量。

复制代码
x = 1:3;
x = x'
x = 
    1
    2
    3

任务

使用转置运算符将 x 从行向量转置为列向量。

7.您可以通过在一条命令中创建行向量并将其全部转置来创建列向量。注意此处使用圆括号来指定运算的顺序。

复制代码
x = (1:2:5)'
x = 
    1
    3
    5

任务

在一条命令中,创建一个名为 x 的列向量,该向量以 5 开头,以 9 结尾,并且元素之间的间隔为 2

附件练习

请注意,如果您使用 linspace: 创建向量,则不需要使用方括号 ([])。

如果您要创建从 1 到 2π 的等间距向量,其中包含 100 个元素,您会使用 linspace 还是 :

linspace

数组创建函数

1.MATLAB 包含许多函数,可帮助您创建常用的矩阵,例如随机数矩阵。

复制代码
x = rand(2)
x = 
    0.8147    0.1270
    0.9058    0.9134

请注意,rand(2) 命令中的 2 指定输出将为一个 2×2 的随机数矩阵。

任务

创建一个名为 x 的变量,该变量是一个 5×5 的随机数矩阵。

2.许多矩阵创建函数允许您输入一个数值来创建方阵 (n ×n),或者输入两个数值来创建非方阵。

复制代码
x = rand(2)
x = 
    0.8147    0.1270
    0.9058    0.9134
复制代码
x = rand(2,3)
x = 
    0.6324    0.2785    0.9575
    0.0975    0.5469    0.9649

任务

使用 rand 创建一个包含 51 列的数组。将结果赋给名为 x 的变量。

3.任务

使用 zeros 函数创建一个包含 63 列 (6×3) 的全零矩阵。将结果赋给名为 x 的变量。

附加练习

如何知道现有矩阵的大小?您可以使用 size 函数。

复制代码
size(x)

您也可以使用一行代码创建与现有矩阵大小相同的矩阵。

复制代码
rand(size(x))

本章的内容就到这里了,觉得对你有帮助的话就支持一下博主把~

🌌点击下方个人名片,交流会更方便哦~

↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

相关推荐
Qter_Sean31 分钟前
自己动手写Qt Creator插件
开发语言·qt
何曾参静谧35 分钟前
「QT」文件类 之 QIODevice 输入输出设备类
开发语言·qt
爱吃生蚝的于勒2 小时前
C语言内存函数
c语言·开发语言·数据结构·c++·学习·算法
小白学大数据4 小时前
Python爬虫开发中的分析与方案制定
开发语言·c++·爬虫·python
phoenix@Capricornus4 小时前
循环矩阵和BCCB矩阵与向量乘积的快速计算——矩阵向量乘积与频域乘积之间的转换
线性代数·矩阵
冰芒猓4 小时前
SpringMVC数据校验、数据格式化处理、国际化设置
开发语言·maven
失落的香蕉4 小时前
C语言串讲-2之指针和结构体
java·c语言·开发语言
红中马喽5 小时前
JS学习日记(webAPI—DOM)
开发语言·前端·javascript·笔记·vscode·学习
杜杜的man5 小时前
【go从零单排】Closing Channels通道关闭、Range over Channels
开发语言·后端·golang
java小吕布6 小时前
Java中Properties的使用详解
java·开发语言·后端