③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))

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

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

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

相关推荐
DevRay26 分钟前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
free-elcmacom40 分钟前
C++学习<1>程序分区
开发语言·c++
醉颜凉1 小时前
Java 必看:如何彻底避免 HashMap 多线程死循环问题?
java·开发语言
默 语1 小时前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
Brilliantwxx1 小时前
【STM32】 I2C_EEPROM_test 工程(实战篇)
开发语言·stm32·单片机·嵌入式硬件·ecmascript
清水白石0081 小时前
Python 异步编程深度解析:Cancellation 到底是异常还是控制信号?从 asyncio 取消机制到企业级事务设计最佳实践
开发语言·python
kolyle1 小时前
万级 QPS 下的 Token 分发系统架构:从 0 到 1 跑通 AI 时代的“水电煤“
开发语言·人工智能·系统架构·token·qps·极智词元·大模型私有化部署
caoerzhong2 小时前
JeeWMS 开源仓库管理系统 GPL-3.0 合规指南:Java WMS 二次开发前必须弄清的授权边界
java·开发语言·开源·vue
Patrick在香港2 小时前
Python 审计香港开放数据目录:两个端点差 10 倍,只有 9.3% 的资源标了「最后修改时间」
开发语言·数据库·python·数据分析·api·数据治理·开放数据
Sylvia33.2 小时前
火星数据体育API|一站式接入足球篮球电竞等18+项目实时数据
java·开发语言·python·websocket·游戏