美文网首页工具癖Matlab/Octave入门简友广场
Matlab/Octave 练习一:基础矩阵操作

Matlab/Octave 练习一:基础矩阵操作

作者: CraXyG | 来源:发表于2019-03-12 22:52 被阅读238次

前言

在Matlab\Octave中,矩阵计算是常见形式,矩阵也是数据集导入储存的常见形式,而且在Matlab\Octave中也对矩阵运算进行了特别优化,比如在处理大数据集时,向量化能有效优化运算时间,但这章只涉及一些基础常见的运算操作。

练习是学习语言的最好途径

打开命令行窗口,尝试以下语句,试试他们的作用,观察他们的输出。

A = [1, 2 ,3; 4, 5, 6; 7, 8, 9]
A + 1
A - 1
A * 2
A / 2
A^2
A'
M = magic(5)
N = magic(5)
M * N
M .* N
M ./ N
A(:, 2 )
M(:, 2 : 5 )
M(1, 2 : 5 )

你应该看到的

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

     1     2     3
     4     5     6
     7     8     9
>>A + 1
ans =

     2     3     4
     5     6     7
     8     9    10
>>A - 1 
ans =

     0     1     2
     3     4     5
     6     7     8
>>A * 2
ans =

     2     4     6
     8    10    12
    14    16    18
>>A / 2
ans =

    0.5000    1.0000    1.5000
    2.0000    2.5000    3.0000
    3.5000    4.0000    4.5000
>>A^2
ans =

    30    36    42
    66    81    96
   102   126   150
>>A'
ans =

     1     4     7
     2     5     8
     3     6     9
>>M = magic(5)

M =

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9
>>N = magic(5)

N =

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9
>>M * N

ans =

        1090         900         725         690         820
         850        1075         815         720         765
         700         840        1145         840         700
         765         720         815        1075         850
         820         690         725         900        1090
>>M .*N

ans =

   289   576     1    64   225
   529    25    49   196   256
    16    36   169   400   484
   100   144   361   441     9
   121   324   625     4    81
>>M ./ N
M ./ N

ans =

     1     1     1     1     1
     1     1     1     1     1
     1     1     1     1     1
     1     1     1     1     1
     1     1     1     1     1
>>A(:, 2 )

ans =

     2
     5
     8
>>M(:, 2 : 5 )

ans =

    24     1     8    15
     5     7    14    16
     6    13    20    22
    12    19    21     3
    18    25     2     9
>>M(1, 2 : 5 )

ans =

    24     1     8    15

观察

了解以上每个命令的运行
新建一个ex1.m文件,记录上面的命令,并使用%在每一行的代码前一行进行记录,说明一下该行的情况。如下:

%这是注释

如果实在猜不出来,就试图查找相关文档吧,没有人能够一下子完全理解他人的程序,资料文档是程序员之间最常见的交流。

加分习题

1.自己找个想要计算的东西,写一个 .m 文件把它计算出来,并输出。 输出函数如下:

fprintf('%f' ,[1,2,3])

2.尝试一下如magic()一样生成矩阵的方法,
如zeros()、ones()、rand()...还有更多类似方法,尝试搜索还有哪些。
3.自行查找一些针对矩阵进行计算的函数,如求求行列式det()。

常见解答

为什么输入时显示错误?

注意你的符号,缩进,是否跟上文给出的代码一致,在初学时有各种各样的情况,需要细心,你也可以把每次犯错的东西记录起来以便在相同的情况时引起你的注意,当你习惯了这,一切都会变得自然起来。

为什么magic()出来的东西不太一样?

因为实际上这是个随机生成矩阵的函数,这类函数还有很多,可以尝试去查阅文档了解他们的背后逻辑。

查阅文档无从下手?

[MathWork官方文档]https://ww2.mathworks.cn/help/matlab/
只有一部分是中文的,但是在程序的世界里面,英语是拥有最多资料的,不会英文的话就只能当’二等公民‘,而且对于想深究的人来说,一手资料永远是最好的。尝试跳出舒适区,都2019年了,至少也要尝试使用各类翻译插件对照着看

相关文章

  • Matlab/Octave 练习一:基础矩阵操作

    前言 在Matlab\Octave中,矩阵计算是常见形式,矩阵也是数据集导入储存的常见形式,而且在Matlab\O...

  • 【机器学习】-Week2 6.Octave/Matlab Res

    Octave/MATLAB resources Octave Resources At the Octave co...

  • 「转载」MATLAB tutorial

    MATLAB命令大全和矩阵操作大全一、矩阵的表示在MATLAB中创建矩阵有以下规则: a、矩阵元素必须在”[ ]”...

  • 学习网站

    Octave/Matlab Tutorial

  • 编程作业(一)

    线性回归(Linear Regression) 简单的Octave/MATLAB函数(Simple Octave/...

  • octave/matlab基本操作

    pinv()求逆矩阵hist()画直方图,第二个参数表示条数disp(sprintf('...', %.2f))打...

  • ubuntu下安装octave

    准备学习深度学习,练习算法,matlab比较大,准备安装octave小型开源软件, sudo apt-add-re...

  • Octave教程(1)

    1、Octave简介: Octave 是一款用于数值计算和绘图的开源软件。和 Matlab 一样,Octave 尤...

  • 机器臂matlab篇

    1.Matlab ——旋转矩阵,四元数,欧拉角之间的转换 matlab练习程序(旋转矩阵、欧拉角、四元数互转) 2...

  • Octave Tutorial

    0. 概述 机器学习 - Octave/Matlab Tutorial 课程,Octave 常用语法记录。 1. ...

网友评论

    本文标题:Matlab/Octave 练习一:基础矩阵操作

    本文链接:https://www.haomeiwen.com/subject/gfvopqtx.html