octave

最近急需机器学习相关的知识,种种原因,需要学习下octave,官网是https://www.gnu.org/software/octave/

⚠️未完待续...

mac安装

  • 参考 https://www.jianshu.com/p/92f37173186e
$ brew install octave 

注意当前时间(2019-08-28)安装的是5.1.0版本,有坑,即:用pause()函数无法响应按键事件。https://www.mobibrw.com/2019/18501 此博客详细记录了此问题,虽然我没按步骤完成5.2的安装

运行方法

  • 安装完毕后,可以打开terminal,直接输入octave就进入了它的GUI界面。
    • 可以直接在GUI运算操作,类似python的终端运行
    • 也可以编辑.m为后缀的文件,如tmp.m,然后在octave终端通过cd、ls等命令找到文件所在文件夹,直接输入文件名,如tmp就可以执行文件了。

基本运算

操作符 含义 示例
+ 1+2
- 2-1
* 2*3
/ 3/2
> 大于 3>2
< 小于 3<2
% 注释 %你看不到我哦
~= 不等于 3~=1
; 行结束符号 a=3;a

打印

示例:disp(sprintf("你好%0.2f", 3.2))

矩阵

  1. 构建
[1 2 3; 3 2 1]
ones(3, 2)
zeros(3, 2)
eye(3)
# 方差标准差都为1的矩阵
rand(3, 2)
  1. 操作
# 选取元素
a(3, 2)
# 选取行
a(2,:)
# 添加行
a  = [a; [10, 3, 2]]
# 添加列
a = [a, [2, 3]]
# 矩阵转向量
a(:)
操作符 含义 示例
+ 矩阵相加 a+3 / a+b
- 矩阵减法 a-3 / a-b
.* 点乘 a.*2
* 叉乘 a*b
./ 除法 a/2
.^ 指数 a.^2
以e为底数的幂数 exp(a)
以e为底数的对数 log(a)
以2为底数的对数 log2(a)
找最大值 max(a)

你可能感兴趣的:(octave)