有很多种方法,这里就列举几种,要是各位有什么想要补充,可以留在评论区。
一、生成:
1.直接用方括号写

a = [1,2,3,4,5];
disp(a);

2.用:生成

a = 1:5;
disp(a);

第二个版本(等差数列)

a = 1:2:10;
disp(a);

3.linspace(a,b,n);[a,b] n-1等分,用那个等分点构成这个序列
(一般用于画图)

a = linspace(1,10,3);
disp(a);

4.zeros函数

a = zeros(1,10);
disp(a);

5.eye函数(这个生成的是对角阵,要是不够对角阵,就取这个对角阵的左上角)

a = eye(1,10);
disp(a);

6.ones函数

a = ones(1,10);
disp(a);

7.矩阵拼接生成

a = ones(1,10);
b = zeros(1,10);
disp([a,b]); % 同行拼接
a = ones(1,10);
b = zeros(1,10);
disp([a;b]); % 列拼接

8.空数组

a = []; % 这样就完成了生成

要理解空数组的存在的意义需要一定的计算机的功底,如果没兴趣可以不用去了解的。
不过,我们还是进入我们的应用层面的思考:
我写过篇关于Python中的None等的TrueFalse问题的探讨文章
点击这个可以查看
因此,我对这个做了类似的处理

a = [];
if adisp('True');
elsedisp('False');
end

输出的是False
情况是类似的

二、删除行列
[]还有一个应用就是删除矩阵的部分

a = [1,2,3;4,5,6;7,8,9];
a([1,3],:) = [];
disp(a);

这样就删除了第1,3行(要注意的是,matlab这里比较符合数学人的思维,不像计算机的从0计数)
类似的,删除1,2列

a = [1,2,3;4,5,6;7,8,9];
a(:,[1,2]) = [];
disp(a);

三、提取和展示
提取行

a = [1,2,3;4,5,6;7,8,9];
disp(a(1,:));
a = [1,2,3;4,5,6;7,8,9];
disp(a([1,3],:));

提取列(原理类似)

a = [1,2,3;4,5,6;7,8,9];
disp(a(:,[1,3]));
a = [1,2,3;4,5,6;7,8,9];
disp(a(:,1));

有趣的事

a = [1,2,3;4,5,6;7,8,9];
disp(a(1));

我一开始不太理解这样的操作,我一看,这样的结果居然不是第一行。
很不理解,于是,我开始了探索
我先是很好奇,那我输入4呢?

a = [1,2,3;4,5,6;7,8,9];
disp(a(4));

结果是2
我就在想,是不是会有一个返还的机制,就是走到越界之后,就再往回走一遍。然后我就做了下面的操作。看看是不是也是2

a = [1,2,3;4,5,6;7,8,9];
disp(a(2));

结果是
4
这时候,灵机一动,我想起了矩阵有一个很骚的操作

a = [1,2,3;4,5,6;7,8,9];
disp(a(:));

这样就是将a按列展开
输出结果是
1
4
7
2
5
8
3
6
9
这样看来,就很好理解了
在MATLAB内部,在矩阵上,对于单独的数采用类似操作方法

为了验证我的观点,我做了最好玩的一个实验

a = [1,2,3;4,5,6;7,8,9];
disp(a(10));

这个代码是会报错的
然后输出的错误是
‘索引超出矩阵维度。’
证明了之前的观点。(本人懒得看文档了)
//======回到之前的做那个提取
还有就是提取子串(,子矩阵)

a = [1,2,3;4,5,6;7,8,9];
disp(a([1,3],[1,2]));

这样就是拿对应列和对应行的方法。
要是想要拿部分列呢?比如对应的,我要拿一个规模大于10 * 10 的前10行怎么搞?
哈哈哈,是不是就有人懵了?
其实很有趣
注意到,这种提取的是用了数组的生成的对应项的
所以,我们可以用到前面的数组生成的部分方法做
如:

a = [1,2,3;4,5,6;7,8,9];
disp(a([1:3],[1,2]));

连续的三行,和第1,2列,这样看不出来什么,但是要是规模大的时候呢?比如说是100*100的中间50行和50列组合成的东西呢?
(别告诉我,用不到emm)

a = rand(100,100);
disp(a([25:75],[25:75]));

这样就可以做到了
对了,如果你说这个是会生成51*51也对,毕竟是包括了首末的。
所以,可以根据自己的需求,进行筛选。
生成三角阵

a = rand(3,3);
disp('a = ');
disp(a);
disp('diag(a) = '); % 生成对角元素,作为列
disp(diag(a));
disp('tril(a) = '); % 生成上三角阵
disp(tril(a));
disp('triu(a) = '); % 生成下三角阵
disp(triu(a));

可能有些时候,由于版本不同,显示的情况有点不一样。但大致上是一致的。

matlab数组操作相关推荐

  1. Matlab数组操作_实现三维数组的写入与读取

    Matlab数组操作 三维数组的写入 将多个二维数组写入三维数组中 %原始二维数组 a1=[0.25 0.25 0.25 0.25 0.23;0.25 0.25 0.11 0.27 0.27;0.25 ...

  2. matlab 连接数组,matlab数组操作知识点总结

    其实如果单从建模来讲,以下大部分函数都用不到,但是这些都是基础. 第一点:数组与矩阵概念的区分 数组:与其它编程语言一样,定义是:相同数据类型元素的集合. 矩阵:在数学中,矩阵(Matrix)是一个按 ...

  3. MATLAB数组的一些操作

    MATLAB数组的一些操作 1 数组元素位置 2 二维数组下标和线性索引装换 2.1.1 数组的元素位置和线性索引位置都能得到数值 2.1.2 线性索引和行列的关系 2.1.3 下标转换为线性索引su ...

  4. Numpy入门教程:03.数组操作

    背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python.其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执 ...

  5. 范德蒙德矩阵在MATLAB中怎么表示,Python 之 Python与MATLAB 矩阵操作总结

    Python 之 Python与MATLAB 矩阵操作小结 一.线形代数理论基础 线形代数(linear algebra)是数学的一个分支,研究矩阵理论.向量空间.线性变换和有限维线形方程组等内容. ...

  6. matlab字符串操作总结

    matlab字符串操作总结 字符串操作总结 char(S1,S2,-) 利用给定的字符串或单元数组创建字符数组 double(S) 将字符串转化成ASC码形式 cellstr(S) 利用的给定的字符数 ...

  7. matlab 数组中查找字符串长度,Matlab 之 字符串数组查找

    Matlab的优势在于向量操作,字符串操作往往费时费力,但是如果能充分利用Matlab自带的一些函数,也可以取得不错的效果.下面就介绍一下字符串数组查找的小技巧. 字符串数组我通常会选择应用cell格 ...

  8. MATLAB数组的左右移动

    MATLAB数组的左右移动 说明 MATLAB代码 说明 我们在MATLAB的数组操作中,例如时域的平移,需要将数组向左/右平移N个单位.下方的代码给出了一个简单的操作函数.其中平移之后的补全采用了两 ...

  9. MATLAB 数组循环移动

    MATLAB 数组元素循环移动(左移和右移) 在日常使用MATLAB做数组操作时,经常会需要循环位移其中的元素. 网上很多的资料都需要自己编写子函数,其实这大可不必,MATLAB已经内含此函数. ci ...

最新文章

  1. axios的简单使用
  2. Ubuntu 及其衍生版安装使用录屏工具【SimpleScreenRecoder】
  3. Android初级教程获取手机系统联系人信息
  4. 众里寻 Bug 千百度,蓦然回首,它却在隔壁老张处……
  5. 【Python】Matplotlib绘制三维线形图
  6. Javascirpt 排障(一)
  7. Spring MVC JSON自己定义类型转换
  8. 二分查找, 插入位置
  9. 游戏里的角色都什么格式图片_半条命2突然更新!游戏里的NPC平时都在干什么?...
  10. Air202学习 二 (定时器使用)
  11. winhex先Add再XOR后的数据恢复
  12. 两年数据对比柱形图_呕心整理4大类12个图表类型,轻松搞定数据可视化
  13. Ubuntu桌面版以太网无法设置IP
  14. 论语之宪问第十四、卫灵公第十五、季氏第十六
  15. linux内核设置mac地址,Linux下如何修改网卡MAC地址
  16. Gitlab进行fork后实时同步源库
  17. 四位顶级AI大牛纵论:深度学习和大数据结合的红利还能持续多久?
  18. 3060ti海力士测试
  19. Windows下安装CgyWin和Hadoop
  20. sl410k安装debian7.0无线网卡问题解决

热门文章

  1. thinkpython2e在线阅读_LaTeX排版的《Think Python 2e》最新版中文翻译
  2. 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)...
  3. 深度学习笔记9 Sparse coding
  4. 【Python学习系列二十六】networkx库图最短路径求解
  5. 【Python学习系列三】Windows下Python第三方常用库安装
  6. Leetcode 622. 设计循环队列 解题思路及C++实现
  7. sqlserver 安装_安装sqlserver
  8. 基于组件的案例:购物车
  9. ajax请求成功后location.href没有跳转
  10. Java 技术篇-java连接并操作数据库实例演示,执行查询、插入、更新和删除操作