博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【MATLAB 从零到进阶】day2 矩阵 数组
阅读量:4971 次
发布时间:2019-06-12

本文共 1886 字,大约阅读时间需要 6 分钟。

访问矩阵元素

>> A=[1,2,3;4,5,6;7,8,9];

>> x=A(2,3)% 双下标访问

 

x =

 

6

>> x=A(2)% 单下标访问

 

x =

 

4

单下标访问时相当于访问A所转成的向量的元素。

>> A(3:6)

 

ans =

 

7 2 5 8

>>y4=A(:,1:2)%提取A的前两列元素

 

y4 =

 

1 2

4 5

7 8

>>y5 = A(1,:)%提取A的第一行元素

>> y5 = A(1,:)

 

y5 =

 

1 2 3

矩阵拼接

B=repmat(A, [m,n])%将矩阵A拼接为大矩阵

>> A=[1 2 3;4 5 6];

>> B=repmat(A,[2,2])

 

B =

 

1 2 3 1 2 3

4 5 6 4 5 6

1 2 3 1 2 3

4 5 6 4 5 6

定义字符矩阵

>> C=['abc';'def';'ghi']

 

C =

 

abc

def

ghi

 

>> size(C) %查看矩阵行数和列数

 

ans =

 

3 3

定义复数矩阵

>> a=[1 2;3 4];

>> b=[5 6;7 8];

>> A2=complex(a,b)

 

A2 =

 

1.0000 + 5.0000i 2.0000 +6.0000i

3.0000 + 7.0000i 4.0000 +8.0000i

>> a=[1 2;3 4];

>> b=[5 6;7 8];

>> A2=complex(a,b)

 

A2 =

 

1.0000 + 5.0000i 2.0000 +6.0000i

3.0000 + 7.0000i 4.0000 +8.0000i

定义符号矩阵

>> syms a b c d

>> A1=[a b;c d]

 

A1 =

 

[ a, b]

[ c, d]

 

 

>> A2=[1 2 3;4 5 6];

>> A2=sym(A2)

 

A2 =

 

[ 1, 2, 3]

[ 4, 5, 6]

特殊矩阵

零矩阵:zeros

一矩阵:ones

单位阵:eye

对角阵:diag

随机阵:rand

魔方阵:magic

高维数组

>> x(1:2,1:2,1)=[1 2;3 4];

>> x(1:2,1:2,2)=[5 6;7 8];

>> x(:,:,1)

 

ans =

 

1 2

3 4

 

>> x(:,:,2)

 

ans =

 

5 6

7 8

 

利用reshape函数定义3维数组。

>> x=reshape(1:12,[2,2,3])

 

x(:,:,1) =

 

1 3

2 4

 

 

x(:,:,2) =

 

5 7

6 8

 

 

x(:,:,3) =

 

9 11

10 12

利用repmat函数定义3维数组

>> x=repmat([1 2;3 4],[1 1 2])

 

x(:,:,1) =

 

1 2

3 4

 

 

x(:,:,2) =

 

1 2

3 4

定义元胞数组

直接赋值定义元胞数组

>> c1={[1 2;3 4],'xz',10;[5 67],['abc';'def'],'i love matlab'}

 

c1 =

 

[2x2 double] 'xz' [ 10]

[1x3 double] [2x3 char] 'i love matlab'

利用cell函数定义元胞数组

c = cell(n)

c = cell(m, n)

c = cell([m, n])

c = cell(m, n, p,…)

c = cell([m n p …])

c = cell(size(A))

定义结构体数组

>> struct1(1).name='xz';

>> struct1(2).name='hp';

>> struct1(1).age=31;

>> struct1(2).age=22;

>> struct1

 

struct1 =

 

1x2 struct array with fields:

name

age

利用struct函数定义结构体数组

调用格式:

s = struct('field1', values1, 'field2', values2, …)

s = struct('field1', {}, 'field2', {}, …)

>> struct2=struct('name',{'xz','hp'},'age',{31,22})

struct2 =

1x2 struct array with fields:

name

age

>> struct2(1).name

ans =

xz

 

转载于:https://www.cnblogs.com/jpld/p/4567318.html

你可能感兴趣的文章
SELECT LOCK IN SHARE MODE and FOR UPDATE
查看>>
Perl/Nagios – Can’t locate utils.pm in @INC
查看>>
目录导航「深入浅出ASP.NET Core系列」
查看>>
Javascript 有用参考函数
查看>>
点群的判别(三)
查看>>
GNSS 使用DFT算法 能量损耗仿真
查看>>
【转】Simulink模型架构指导
查看>>
MYSQL数据库的导出的几种方法
查看>>
SQL Server-5种常见的约束
查看>>
硬件之美
查看>>
[转载]java开发中的23种设计模式
查看>>
表格的拖拽功能
查看>>
函数的形参和实参
查看>>
【TP SRM 703 div2 500】 GCDGraph
查看>>
webdriver api
查看>>
apache 实现图标缓存客户端
查看>>
揭秘:黑客必备的Kali Linux是什么,有哪些弊端?
查看>>
linux系统的远程控制方法——学神IT教育
查看>>
springboot+mybatis报错Invalid bound statement (not found)
查看>>
Linux环境下SolrCloud集群环境搭建关键步骤
查看>>