找回密码
 注册
查看: 22642|回复: 1

matlab矩阵对角元素与上下三角元素的抽取,处理数据时常用哦

[复制链接]
发表于 2010-6-7 12:48:47 | 显示全部楼层 |阅读模式
1.矩阵对角线元素的抽取
函数  diag
格式  X = diag(v,k)   %以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线;当k>0时,v为上方第k条对角线;当k<0时,v为下方第k条对角线。
X = diag(v)    %以v为主对角线元素,其余元素为0构成X。
v = diag(X,k)   %抽取X的第k条对角线元素构成向量v。k=0:抽取主对角线元素;k>0:抽取上方第k条对角线元素;k<0抽取下方第k条对角线元素。
v = diag(X)    %抽取主对角线元素构成向量v。


>> v=[1 2 3];
>> x=diag(v,-1)
x =
     0     0     0     0
     1     0     0     0
     0     2     0     0
     0     0     3     0
>> A=[1 2 3;4 5 6;7 8 9]
A =
     1     2     3
     4     5     6
     7     8     9
>> v=diag(A,1)
v =
     2
     6
2.上三角阵和下三角阵的抽取
函数  tril   %取下三角部分
格式  L = tril(X)     %抽取X的主对角线的下三角部分构成矩阵L
L = tril(X,k)    %抽取X的第k条对角线的下三角部分;k=0为主对角线;k>0为主对角线以上;k<0为主对角线以下。
函数  triu    %取上三角部分
格式  U = triu(X)    %抽取X的主对角线的上三角部分构成矩阵U
U = triu(X,k)   %抽取X的第k条对角线的上三角部分;k=0为主对角线;k>0为主对角线以上;k<0为主对角线以下。


>> A=ones(4)    %产生4阶全1阵
A =
   1     1     1     1
     1     1     1     1
     1     1     1     1
     1     1     1     1
>> L=tril(A,1)    %取下三角部分
L =
     1     1     0     0
     1     1     1     0
     1     1     1     1
     1     1     1     1
>> U=triu(A,-1)    %取上三角部分
U =
     1     1     1     1
     1     1     1     1
     0     1     1     1
     0     0     1     1

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-21 16:38 , Processed in 0.022038 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表