【Matlab】第一课:Array Manipulation

目录
1.矩阵元素替换和删减
2.Array Aarithmetic
3.Some Matrix Related Functions
4.矩阵元素替换
5.元素逆序
6.structure 与 cell 的宣告
7.利用reshape()调整cell或者矩阵

1.矩阵元素替换和删减
在这里插入图片描述

 >>A = [1 21 6; 5 17 9; 31 2 7]
>> A(1,2) = 76
>> A(3,2) = 0
>> A([1 2], [2 3]) =0
>> A(3,:) = []

解析:
A(1,2):矩阵A的第一行第二列位置元素;
A(【1 2】,【2 3】) = 0: 矩阵A第一二行 于 第二三列 的交;
A(3;:):矩阵A第三行全部元素;
运行过程如下
在这里插入图片描述

tips:就目前观察:分号用在【里】
** 方向键 ↑ ↓ 寻找历史命令**
** Π = pi ; e = exp ; ln = log ;**
指令: help+… ; clear+… ; format+…(如:long/rat(以分数显示));

2.Array Aarithmetic
A + B :矩阵对应位置元素相加
A - B : 矩阵对应位置元素相减
A * B : 矩阵乘法(rows*cols)
A .*B :矩阵对应位置元素相乘
A / B : A * inv(B)
A ./ B :矩阵对应位置元素相除
A+a(实数):矩阵各个元素均+a
A / a :矩阵各个元素均/a
A ^ a : A * A * ……
A .^a : 矩阵各元素均^a
A’ : 矩阵A转置
在这里插入图片描述

3.Some Matrix Related Functions
max(A) : 矩阵每列最大值
max(max(A)) : 矩阵最大值
min(A) : 矩阵每列最小值
sum(A): 矩阵每列的和
mean(A): 矩阵每列平均值
sort(A) : 矩阵每列元素从小到大排序
sortrows(A): 按矩阵第一列元素大小排列rows
size(A): n * n
length(A) : 矩阵阶数
find(A) : 查找矩阵元素 以列位置返回
如:
在这里插入图片描述
在这里插入图片描述

4.矩阵元素替换

>> s1

s1 =

example

>> s1(s1 == 'e') = 'a';
>> s1

s1 =

axampla

5.元素逆序

s1 = 'hellow world !;
s2 = s1(size(s1,2):-1:1);%%size(s1,2)返回s1的列数
s2

在这里插入图片描述

  • s1(13 : -1 : 1)进行索引操作

6.structure 与 cell 的宣告
宣告structure 用变量名.(点)
例 : student.name = ‘zhang san’;
宣告cell 用{}(大括号)
例 : A(1,1) = {[1 2 3; 4 5 6]}; / A{1,1} = [1 2 3 ; 4 5 6];

7.利用reshape()调整cell或者矩阵

>> A = {'zhang san',[1 2 3; 4 5 6]; pi,magic(5)};
>> B = reshape(A,1,4);
>> A

A = 

    'zhang san'    [2x3 double]
    [   3.1416]    [5x5 double]

>> B

B = 

    'zhang san'    [3.1416]    [2x3 double]    [5x5 double]

>> 
>> C = [1 2 3; 4 5 6];
>> D = rashape(C,3,2)
D =

     1     5
     4     3
     2     6
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
程序分享如何实现实时滚动条效果类Mathematica的manipulate-manipulate.m 大家知道,在MATLAB中的滚动条控件是“非实时”的。所谓非实时,指的是用户在拖动滚动条时,滚动条的callback函数不会被触发,只有放开滚动条后,callback函数才会被调用一次。 但是,有的时候我们可能会有这样的需要:比如我们在窗口中做出了一个y = f函数的图形,这个函数有几个参数a, b, c ... 然后我们希望通过用滚动条的形式来改变这些参数的数值,并实时地在窗口中观察参数改变后的图形的结果。但直接使用滚动条控件的话,拖动滚动条时图形不会更新。想看到参数连续变化时对图形的影响,就只能一下一下地点击滚动条两端的箭头,非常繁琐。 这个功能在Mathematica下用manipulate命令就非常容易实现。但是在MATLAB下却一直没有提供具有类似功能的函数。所以我自己写了一个MATLABmanipulate版本。当然,现在这个版本只能实现最基本的2D plot对象。至于其他类型的图形对象,我会在以后慢慢添加。 后 (或者在 http://www.mathworks.com/matlabcentral/fileexchange/36512-manipulate-interactive-parametrized-plotting 下载,帮我增加点人气) 在命令行中输入 manipulate复制代码 即可看到如下图所示的界面,用户可以随意拖动滚动条,axes中的内容会实时更新。 manipulate_demo.gif 实时滚动条效果演示 用户也可以使用自己给定的函数,并且可以操纵任意数目的参数,比如下列语句: manipulate*x param),[-10:10],[2 0]},{[-10 10],[-10 10]}, {1,'Slope',1 10}, {2,'Shift',-5 5})复制代码 会产生一条直线,用户可以操纵其斜率和截距。 更多使用方法请看函数自带的帮助(英文)。 欢迎提出宝贵意见。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值