前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【MATLAB 从零到进阶】day3 矩阵 数组

【MATLAB 从零到进阶】day3 矩阵 数组

作者头像
统计学家
发布2019-04-10 14:54:10
6860
发布2019-04-10 14:54:10
举报
文章被收录于专栏:机器学习与统计学

几种数组的转换

mat2ce11,将矩阵分块,转为元胞数组

ce112mat,将元胞数组转为矩阵

num2ce11,将数值型数组转为元胞数组

ce112struct,将元胞数组转为结构数组

struct2ce11,将结构数组转为元胞数组

num2str,将数值型数组转为字符型数组

str2num,将字符型数组转为数值型数组

>> A1=rand(60,50); >> B1=mat2cell(A1,[10 20 30],[25 25]) B1 = [10x25 double] [10x25 double] [20x25 double] [20x25 double] [30x25 double] [30x25 double] >> >> C1=cell2mat(B1); >> isequal(A1,C1) ans = 1 >> A2=[1 2 3 4;5 6 7 8;9 10 11 12]; >> B2=num2cell(A2) B2 = [1] [ 2] [ 3] [ 4] [5] [ 6] [ 7] [ 8] [9] [10] [11] [12] >> C={'heping','tianjin',22;'xiezhh','xingyang',31} C = 'heping' 'tianjin' [22] 'xiezhh' 'xingyang' [31] >> fields={'Name','Address','Age'}; >> S=cell2struct(C,fields,2) S = 2x1 struct array with fields: Name Address Age >> CS=struct2cell(S) CS = 'heping' 'xiezhh' 'tianjin' 'xingyang' [ 22] [ 31] >> isequal(C,CS') ans = 1

矩阵的算术运算

矩阵的除法包括左除(A\B)、右除(A/B)和点除(A./B)三种。一般情况下,x=A\b是方程组A*x=b的解,而x=b/A 是方程组x*A=b的解,x=A./B表示同型矩阵A和B对应元素相除。

>> A=[2 3 8;1 -2 -4;-5 3 1]; >> b=[-5;3;2]; >> x=A\b x = 1 3 -2 >> B=A; >> C=A./B C = 1 1 1 1 1 1 1 1 1

矩阵的乘方要求矩阵必须是方阵,有以下3种情况:

(1)矩阵A为方阵,x为正整数,A^ x表示矩阵A自乘x次;

(2)矩阵A为方阵,x为负整数,A^ x表示矩阵A-1自乘x次;

(3)矩阵A为方阵,x为分数,例如x = m/n,A^ x表示矩阵A 先自乘m次,然后对结果矩阵里的每一个元素开n次方。 矩阵的点乘方不要求矩阵为方阵,有以下2种情况:

(1)A为矩阵,x为标量,A.^ x表示对矩阵A中的每一个元素 求x次方;

(2)A和x为同型矩阵,A.^ x表示对矩阵A中的每一个元素求 x中对应元素次方。

>> A=[1 2;3 4]; >> B=A^2 B = 7 10 15 22 >> C=A.^2 C = 1 4 9 16 >> D=A.^A D = 1 4 27 256

矩阵的关系运算

矩阵的关系运算是通过比较两个同型矩阵的对应元素的大小关系,或者比较一个矩阵的各元素与某一标量之间的大小关系,返回一个逻辑矩阵(1表示真,0表示假)。关系运算的运算符有:< (小于)、<= (小于或等于)、> (大于)、>= (大于或等于)、= = (等于)、~= (不等于)6种

>> A=[1 2;3 4]; >> B=[2,2;2 2]; >> C1=A>B C1 = 0 0 1 1 >> C2=A~=B C2 = 1 0 1 1 >> C3=A>=2 C3 = 0 1 1 1

矩阵的逻辑运算

逻辑“或”运算,运算符为“|”. A | B表示同型矩阵A和B的或运算,若A和B的对应元素至少有一个非0,则相应的结果

元素值为1,否则为0;逻辑“与”运算,运算符为“&”. A & B表示同型矩阵A和B的与运算,若A和B的对应元素均非0,则相应的结果元素值为1,否则为0;逻辑“非”运算,运算符为“~”. ~ A表示矩阵A的非运算,若A的元素值为0,则相应的结果元素值为1,否则为0;逻辑“异或”运算。xor(A, B)表示同型矩阵A和B的异或运算,若A和B的对应元素均为0或均非0,则相应的结果元素

值为0,否则为1. 先决与运算,运算符“&&”. A && B 表示当A为真时,才执行A和B的逻辑与运算先决或运算,运算符“||”. A || B 表示当A为真时,不用再执行A和B的逻辑或运算

运算符的优先级

逆矩阵与广义伪逆矩阵

>> A=[1 2 ;3 4]; >> Ai=inv(A) Ai = -2.0000 1.0000 1.5000 -0.5000 >> syms a b c d >> B=[a b;c d]; >> Bi=inv(B) Bi = [ d/(a*d-b*c), -b/(a*d-b*c)] [ -c/(a*d-b*c), a/(a*d-b*c)] >> C=[1 2 3;4 5 6]; >> Cpi=pinv(C) Cpi = -0.9444 0.4444 -0.1111 0.1111 0.7222 -0.2222 方阵的特征值与特征向量 >> A=[5 0 4;3 1 6;0 2 3]; >> d=eig(A) d = -1.0000 3.0000 7.0000 >> [V,D]=eig(A) V = -0.2857 0.8944 0.6667 -0.8571 0.0000 0.6667 0.4286 -0.4472 0.3333 D = -1.0000 0 0 0 3.0000 0 0 0 7.0000 >> [Vs,Ds]=eig(sym(A)) Vs = [ 2, -2, 1] [ 2, 0, 3] [ 1, 1, -3/2] Ds = [ 7, 0, 0] [ 0, 3, 0] [ 0, 0, -1]

MATLAB常用标点符号

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-06-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习与统计学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档