MATLAB数组_1

MATLAB向量与矩阵

我们怎么使用MATLAB去处理矩阵的相关操作?

向量,矩阵

一个m*n行的数组A:
其行标,列标都是从1开始。
行标从上到下递增;
列标从左到右递增。

创建数组变量的一般方法

var=expression
var为合法变量名;
expression为MATLAB合法表达式。

创建一维数组变量 :

第一种方法:使用方括号操作符  [ ]
如 
    a=[1 3 pi 3+5*i]
    a=[1,3,pi,3+5*i]
    
第二种方法:使用冒号  :   操作符
基本语法 x=Start:Increment:End
    Start表示新向量x的第一个元素
    新向量x的最后一个元素不能大于End
    Increment可正可负,且遵守正负规则,否则创建的是空向量
    若Increment=1,可以间写为x=Start:End
    
第三种方法:利用函数linspace
基本语法 x=linspace(x1,x2,n)
    该函数生成一个由n个元素组成的行向量
 如:x=linspace(1,2,5)
 
 第四种方法:利用函数logspace 

列向量的创建:

使用方括号“[ ]”操作符,使用分号“;”分割行

关于取转置单引号的使用 ’ 当使用一个单引号时代表共轭转置,如果希望只是转置,那么使用 .’ 操作符。

第一种方法:使用方括号“ [ ] ”操作符:
    数组元素在方括号中键入
    行与行之间用分号间隔,也可以在分行处用回车键间隔
    行内元素用空格或者逗号分隔
  
 第二种方法 :命令函数
     函数ones(生成全一矩阵),zeros(生成0矩阵)
     reshape(重新定义矩阵形状)
     reshape使用:
         >>a=-4:4
         >>b=reshape(a,3,3)
         
    注: 数组元素排列顺序:从上到下排列。
    通常的特殊函数还有:eye(单位矩阵)magic(魔方阵)rand(0~1之间均匀分布的随机矩阵)
    randn(均值为0,方差为1的标准正态分布随机矩阵)
    “help elmat”获得基本的矩阵生成和操作函数列表。

数组元素的标识与寻访

数组元素的标识

  1. 全下标标识 :注意MATLAB中使用小括号()寻访地址。
  2. 单下标标识:用一个下标来表明位置。对于二维数组看作一个按一维数组相接排成的长列。
  3. 两种“下标”标识的变换:sub2ind,ind2sub

当修改数组元素的值时,参考:


>>a=linspace(1,10,5);
>>a([1,2,3]) //访问前三个元素
>>a([end : -1 : end-2]) //访问后三个元素
>>a(1)=5 //单独赋值
>>a([2,5])=1 //整体赋值
>>a([1,2,5])=[1,2,5] //给1 2 5元素赋值
/* 二维数组的操作 */
>>a_2=zeros(2,4)
>>a_2(:)=1:8
>>a_2=([2 5 8]}
>>a_2(:,end)  //见下方解释1)
>>a_2(:,end:-1:3) //见下方注释2)
>>a_2(:,[2 3])=ones(2) //见下方注释3)

关于二维数组中逗号的使用,在上面1)2)3)中,逗号都代表分割行与列
1)冒号代表全部,则1)中意为所有行,最后一列
2)所有行,倒数第一个开始到第三列
3)第二三列被1替代

空数组

有一维是0的数组即为空数组
空数组不占据存储空间
例如: a=[],b=ones(0,5)
空数组是全0空数组并非全0数组!
我们可以利用空数组做什么? 改变数组!
例如:
a=magic(4),a(:,2)=[]

今天的MATLAB到这里啦!水平有限,如果有错误欢迎大家指出!不胜感激~
谢谢大家看我的博文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值