您的位置:首页 > 编程语言 > MATLAB

matlab中矩阵的简单操作 --- 创建,索引,重排,转置,拆分,删除,扩转,压缩

2017-10-13 18:01 357 查看
>> %矩阵的索引操作 --- 根据行列或者序号获取矩阵中的元素 --- 行列信息和序号信息可以相互转换

>> clear

>> temp

未定义函数或变量 'temp'。

 

>> load('matlab.mat')

>> load('temp.mat')

>> load('matlab.mat')

>> matlab01

>> A

A =

     1     2     3

     4     5     6

     7     8     9

>> A(2,2)

ans =

     5

>> %根据行下标和列下标来处理

>> %根据序号来处理,这可以将矩阵看成是一维数组,序号相当于数组的下标,只是matlab中是按列存储而非按行存储。

>> A(6)

ans =

     8

>> %逆向搜索,已知元素求元素在矩阵中的下标或者序号

>> [m, n] = find(A == 6)

m =

     2

n =

     3

>> index = find(A == 6)

index =

     8

>> %矩阵的下标和矩阵的序号之间可以进行转换

>> [a, b] = ind2sub(size(A), 6)

a =

     3

b =

     2

>> ind = sub2ind(size(a), 3, 2)

错误使用 sub2ind (line 52)

下标超出范围。

 

>> ind = sub2ind(size(A), 3, 2)

ind =

     6

>> %重排矩阵

>> B = reshape(A, 9, 1)

B =

     1

     4

     7

     2

     5

     8

     3

     6

     9

>>   %矩阵的转置

>> C = B'

C =

     1     4     7     2     5     8     3     6     9

>> %矩阵的拆分

>> D = C(1,1:3)

D =

     1     4     7

>> E = C(2, 1:3)

索引超出矩阵维度。

>> E = A(2, 2:3)

E =

     5     6

>> F = A(2:3, 1:2)

F =

     4     5

     7     8

>> %删除矩阵中的元素

>> F(2) = [];

>> F

F =

     4     5     8

>> F(1, :) = []

F =

   Empty matrix: 0-by-3

>> B = A(1:2, :)

B =

     1     2     3

     4     5     6

>>%矩阵的扩展

>> C = repmat(B, 3, 2)

C =

     1     2     3     1     2     3

     4     5     6     4     5     6

     1     2     3     1     2     3

     4     5     6     4     5     6

     1     2     3     1     2     3

     4     5     6     4     5     6

>>矩阵的压缩

>> D = [1 2 3 4 5 6 7 2 3 1 4 5 6];

>> E = unique(D);

>> D

D =

     1     2     3     4     5     6     7     2     3     1     4     5     6

>> E

E =

     1     2     3     4     5     6     7

>> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐