访问矩阵元素

>> A=[1,2,3;4,5,6;7,8,9];

>> x=A(2,3)% 双下标访问

x =

6

>> x=A(2)% 单下标访问

x =

4

单下标访问时相当于访问A所转成的向量的元素。

>> A(3:6)

ans =

7 2 5 8

>>y4=A(:,1:2)%提取A的前两列元素

y4 =

1 2

4 5

7 8

>>y5 = A(1,:)%提取A的第一行元素

>> y5 = A(1,:)

y5 =

1 2 3

矩阵拼接

B=repmat(A, [m,n])%将矩阵A拼接为大矩阵

>> A=[1 2 3;4 5 6];

>> B=repmat(A,[2,2])

B =

1 2 3 1 2 3

4 5 6 4 5 6

1 2 3 1 2 3

4 5 6 4 5 6

定义字符矩阵

>> C=['abc';'def';'ghi']

C =

abc

def

ghi

>> size(C) %查看矩阵行数和列数

ans =

3 3

定义复数矩阵

>> a=[1 2;3 4];

>> b=[5 6;7 8];

>> A2=complex(a,b)

A2 =

1.0000 + 5.0000i 2.0000 +6.0000i

3.0000 + 7.0000i 4.0000 +8.0000i

>> a=[1 2;3 4];

>> b=[5 6;7 8];

>> A2=complex(a,b)

A2 =

1.0000 + 5.0000i 2.0000 +6.0000i

3.0000 + 7.0000i 4.0000 +8.0000i

定义符号矩阵

>> syms a b c d

>> A1=[a b;c d]

A1 =

[ a, b]

[ c, d]

>> A2=[1 2 3;4 5 6];

>> A2=sym(A2)

A2 =

[ 1, 2, 3]

[ 4, 5, 6]

特殊矩阵

零矩阵:zeros

一矩阵:ones

单位阵:eye

对角阵:diag

随机阵:rand

魔方阵:magic

高维数组

>> x(1:2,1:2,1)=[1 2;3 4];

>> x(1:2,1:2,2)=[5 6;7 8];

>> x(:,:,1)

ans =

1 2

3 4

>> x(:,:,2)

ans =

5 6

7 8

利用reshape函数定义3维数组。

>> x=reshape(1:12,[2,2,3])

x(:,:,1) =

1 3

2 4

x(:,:,2) =

5 7

6 8

x(:,:,3) =

9 11

10 12

利用repmat函数定义3维数组

>> x=repmat([1 2;3 4],[1 1 2])

x(:,:,1) =

1 2

3 4

x(:,:,2) =

1 2

3 4

定义元胞数组

直接赋值定义元胞数组

>> c1={[1 2;3 4],'xz',10;[5 67],['abc';'def'],'i love matlab'}

c1 =

[2x2 double] 'xz' [ 10]

[1x3 double] [2x3 char] 'i love matlab'

利用cell函数定义元胞数组

c = cell(n)

c = cell(m, n)

c = cell([m, n])

c = cell(m, n, p,…)

c = cell([m n p …])

c = cell(size(A))

定义结构体数组

>> struct1(1).name='xz';

>> struct1(2).name='hp';

>> struct1(1).age=31;

>> struct1(2).age=22;

>> struct1

struct1 =

1x2 struct array with fields:

name

age

利用struct函数定义结构体数组

调用格式:

s = struct('field1', values1, 'field2', values2, …)

s = struct('field1', {}, 'field2', {}, …)

>> struct2=struct('name',{'xz','hp'},'age',{31,22})

struct2 =

1x2 struct array with fields:

name

age

>> struct2(1).name

ans =

xz

【MATLAB 从零到进阶】day2 矩阵 数组的更多相关文章

  1. 从零单排入门机器学习:Octave/matlab的经常使用知识之矩阵和向量

    Octave/matlab的经常使用知识之矩阵和向量 之前一段时间在coursera看了Andrew ng的机器学习的课程,感觉还不错.算是入门了.这次打算以该课程的作业为主线,对机器学习基本知识做一 ...

  2. MATLAB 的 cell 大法(单元格数组)

    MATLAB 的 cell,称单元格数组 or 元胞数组:使用频率特别高,甚至比 struct 结构体还高. MATLAB文档给出的 cell 官方定义: A cell array is a coll ...

  3. C++和MATLAB混合编程求解多项式系数(矩阵相除)

    摘要:MATLAB对于矩阵处理是非常高效的,而C++对于矩阵操作是非常麻烦的,因而可以采用C++与MATLAB混合编程求解矩阵问题. 主要思路就是,在MATLAB中编写函数脚本并使用C++编译为dll ...

  4. 1145: 零起点学算法52——数组中删数II

    1145: 零起点学算法52--数组中删数II Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 293 ...

  5. PIE调用Python返回得到直方图矩阵数组

    前段时间我研究了PIE SDK与Python的结合,已经能成功的通过C#调用Python,获得彩色直方图.(上一篇随笔中有分享:https://www.cnblogs.com/yuan1120/p/1 ...

  6. 转载 matlab矩阵数组常用操作

    一. length             返回矩阵最长维的的长度    ndims       返回维数          numel      返回矩阵元素个数size               ...

  7. 7.26机房报零赛——无尽的矩阵【kmp+hash】

    恩,其实大家都没有报零,反正我是蒟蒻 为了纪念我第一次打过哈希,特此写一篇题解 题目描述 从前有一个的小矩阵,矩阵的每个元素是一个字母(区分大小写),突然有一天它发生了 变异,覆盖了整个二维空间,即不 ...

  8. Matlab与.Net混合编程-多维数组赋值出错的问题

    问题描述:Matlab可编译供.net调用的dll.两种不同环境对数据类型的定义相差较大,因此在C#中调用Matlab编译的函数时,首先要将C#中的变量类型转换成与Matlab对应的中转类型.Matl ...

  9. matlab中num2str 将数字转换为字符数组

    参考:https://ww2.mathworks.cn/help/matlab/ref/num2str.html?searchHighlight=num2str&s_tid=doc_srcht ...

随机推荐

  1. DAG上的DP

    引例:NYOJ16 矩形嵌套 时间限制:3000 ms  |           内存限制:65535 KB 难度:4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可 ...

  2. POJ2184(01背包变形)

    Cow Exhibition Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11092   Accepted: 4404 D ...

  3. Java创建对象解释

    创建对象包括两个步骤,首先为对象声明,然后为对象分配内存. (1)对象声明 格式:类名 对象名: 这里只是声明了对象,但该对象并不能够使用,原因为未分配内存空间. (2)为对象分配内存 格式:new ...

  4. 准备看的ros相关源码

    进程通信:lcm 导航:navigation 3D可视化工具:rviz Mobile Robot Programming Toolkit:mrpt 其他: 人体肌肉:simbody openslam ...

  5. OpenWrt路由器通过iPhone有线共享网络上网

    2018年4月更新: 我自己的手机在openwrt上网速很慢,在电脑上又很快.应该不是被限速了,但是没找到原因. 三大运营商在学校争客户,手机卡开出了校内无限流量的条件.很开心,之前准备到东北大学的时 ...

  6. java.lang.ClassCastException: java.util.HashMap cannot be cast to java.lang.String

    问题背景:从前端传来的json字符串中取某些值,拼接成json格式入参调外部接口. 报如下错: java.lang.ClassCastException: java.util.HashMap cann ...

  7. C++设计模式之工厂方法模式

    来自:http://blog.csdn.net/pangshaohua/article/details/38912555 参考写的一个工厂demo 1.定义"背景风格的抽象类".& ...

  8. Lightoj 1094 【DFS】

    题意: 给你一颗n-1条边的树,求某两点的最长路 思路: 随便找个根,然后我们从根往下搜,对于每个结点会出现多个子节点或者一个子节点或者没有结点, 多个子节点的话,就以他为中间点,在子节点中找两条最长 ...

  9. CentOS 6.5 升级gcc到4.8 以及libstdc++

    CentOS 6.5 自带gcc太旧不支持c11, 升级到4.8的步骤: 引用: http://cache.baiducontent.com/c?m=9d78d513d99216f31eb0d5690 ...

  10. IT兄弟连 JavaWeb教程 JSP中的三大指令

    指令标识主要用于设定整个JSP页面范围内都有效的相关信息,它是被服务器解释并执行的,不会产生任何内容输出到网页中.也就是说,指令标识对于客户端浏览器是不接见的.JSP页面的指令标识与我们的身份证类似, ...