MATLAB二维数组(矩阵)的创建
MATLAB 二维数组与矩阵之间有很大的相关性,二维数组是由实数或复数排列成矩形构成的,而且从数据结构上看,矩阵和二维数组没有区别。
本节将讲解 MATLAB 二维数组的两种创建方式。
例如,生成一个 2×3 的矩阵:
可以用冒号快速建立矩阵,步长在默认的情况下为 1,也可以自定义步长。具体程序如下:
请看下面的例子:
本节将讲解 MATLAB 二维数组的两种创建方式。
直接输入
矩阵的生成可以通过在方括号[ ]
中输入元素实现,不同行之间要用分号;
隔开,不同列用空格或者逗号,
隔开。例如,生成一个 2×3 的矩阵:
>> a=[1,2,3; 2,3,4] a = 1 2 3 2 3 4
可以用冒号快速建立矩阵,步长在默认的情况下为 1,也可以自定义步长。具体程序如下:
>> A=[1:3; 4:6] A = 1 2 3 4 5 6 >> B=[2:3:11; 4:2:10] B = 2 5 8 11 4 6 8 10
使用矩阵生成函数
MATLAB 中提供了很多用于生成矩阵的函数,请看下表。矩阵 | 函数 | 矩阵 | 函数 |
---|---|---|---|
全零矩阵 | zeros() | 友矩阵 | compan() |
单位矩阵 | eye() | Hadamard 矩阵 | hadamard() |
全 1 矩阵 | ones() | Hankel 矩阵 | hankel() |
均匀分布随机矩阵 | rand() | Hilbert 矩阵 | hilb() |
正态分布随机矩阵 | randn() | 逆 Hilbert 矩阵 | invhilb() |
产生线性等分向量 | linspace() | Magic 矩阵 | magic() |
产生对数等分向量 | logspace() | Pascal 矩阵 | pascal() |
Wilkinson 特征值测试矩阵 | wilkinson() | 拓普利兹矩阵 | toeplitz() |
请看下面的例子:
>> ones(2,4) %产生(2x4)全 1 数组 ans = 1 1 1 1 1 1 1 1 >> randn('state',0) %把正态随机数发生器置 0 >> randn(2,3) %产生正态随机阵 ans = -0.4326 0.1253 -1.1465 -1.6656 0.2877 1.1909 >> D=eye(3) %产生 3x3 的单位阵 D = 1 0 0 0 1 0 0 0 1 >> diag(D) %取 D 阵的对角元 ans = 1 1 1 >> diag(diag(D)) %外 diag 利用一维数组生成对角阵 ans = 1 0 0 0 1 0 0 0 1 >> randsrc(3,20,[-3,-1,1,3],1) %在 [-3,-1,1,3] 上产生 3x20 均布随机数组,随机发生器的状态设置为 1 ans = 1 至 10 列 -1 -1 -3 1 -3 1 -3 3 3 -3 1 -3 -1 -1 3 -1 -3 -1 3 -3 -3 -3 -1 1 -3 1 3 1 -3 3 11 至 20 列 -3 1 1 3 -1 -1 -1 1 -1 -3 -1 1 3 3 3 3 -3 -3 -3 1 3 -1 -3 1 -3 -1 -3 -1 1 1
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算