Octave基本使用

 

目录

Octave下载(windows版本)

Octave的基本操作

基本运算

Octave变量

向量和矩阵

​help命令

移动数据

数据的读取和存储

矩阵索引

矩阵组合

计算数据

数据绘制

函数图像绘制

矩阵图像绘制

控制语句:for、while、if语句

for语句

while语句

if语句

定义和调用函数


Octave下载(windows版本)

https://www.gnu.org/software/octave/download.html

Octave的基本操作

基本运算

改变默认的Octave提示符: PS1('<<');

Octave变量

  • ;可以阻止打印
  • disp命令表示显示,sprintf命令用于生成字符串

  • format short默认输出打印少量的小数点后位数;format long默认显示更多的小数点后位数

向量和矩阵

  • 用[]表示一个矩阵,用;来隔离每一行

  • 行向量与列向量的表示:

  • v = 1:0.1:2   //v是一组值,从1开始,步长为0.1,一直增加到2;默认步长为1

  • ones(m,n)    生成元素均为1的m行n列矩阵
  • zeros(m,n)    生成元素均为0的m行n列矩阵

  • rand(m,n)      生成随机的m行n列矩阵,每个元素都介于0到1之间
  • randn(m,n)    生成高斯随机变量(正态分布的随机变量),均值为0,方差为1
  • w = -6 + sqrt(10) * (randn(1,100000))     生成一个有10000个元素的向量,均值为-6,方差为10
  • hist(w)  将w绘制成一个直方图

eye(n)   生成n阶单位矩阵


help命令

如help eye 显示单位矩阵的帮助函数。键入Q可以退出

移动数据

数据的读取和存储

  • 求矩阵、向量的维度(通常矩阵用size,向量用length)

  • pwd命令显示Octave当前所在的路径
  • cd命令表示改变路径,load用于加载文件
  • who命令显示当前Octave储存的所有变量
  • whos命令显示更详细的变量信息
  • save命令将数据存入硬盘
  • clear命令清除所有当前储存的变量

矩阵索引

  • A(m,n)    矩阵A第m行第n列的元素
  • A(m,:)     矩阵第m行的所有元素
  • A(:,n)      矩阵第n列的所有元素
  • A([m,n],:)    矩阵第m、n行的所有元素

矩阵组合

  • A(:)   将A中所有的元素放入一个单独的列向量

  • C =  [A B]   将A B左右拼组合成新的矩阵C
  • C = [A ; B]   将A B上下拼组合成新的矩阵C

计算数据

  • A * B   两个矩阵相乘
  • A .* B  两个矩阵元素对应分别相乘
  • A .^ 2   A矩阵每个元素分别平方

  • log(V) 、exp(V)、abs(V)对矩阵或向量的每个数求对数、以e为底的对数、绝对值

  • A'   求A的转置
  • pinv(A)  求A的逆矩阵

  • 求向量的最大值或最大值及其索引值   如果是矩阵会返回每列的最大值
  • 将向量的每个元素都与某个数比较
  • 找出满足某种条件的索引值

  • magic(n)函数生成n阶矩阵(幻方矩阵)—— 每一行、每一列、每一斜对角线加起来为同一个数
  • [r,c] = find(A > 7)     返回大于7的元素的行和列号
  • max(A,[],1)  返回每一列的最大值 (默认)   max(A,[],2)返回每行的最大值   max(max(A))或max(A(:))返回矩阵中的最大值

  • sum(V)   返回向量中所有元素的和
  • prod(V)   返回向量中所有元素的乘积
  • floor(V)、ceil(V)

  • sum(A,1)  求每一列的和(默认)      sum(A,2)   求每一行的和
  • 求两条对角线之和   flipud(A) 将矩阵A进行垂直翻转

数据绘制

函数图像绘制

  • plot(x,y)   绘制y关于x的图像;
  • hold on函数让Octave在原有的图像上绘制新的图像,其中plot中的‘r’表示线条的颜色;
  • xlable、ylable函数分别为x轴、y轴加上标签,legend('','')标记曲线的内容,title()在图像顶部显示图像标题;
  • print -dpng ‘myPlot.png’ 将图像保存到当前路径
  • close命令关闭当前图像

 

 

  • figure(x)为图像标号;
  • subplot(m,n,x)将图像分为m*n个格子,使用第x个格子;
  • axis([xstart,xend,ystart,yend])设置坐标轴的范围;
  • clf命令清除图像;

矩阵图像绘制

  • imagesc(A)  用不同颜色来代表不同的值

控制语句:for、while、if语句

for语句

while语句

if语句

定义和调用函数

  • addpath('C:\uers')      将路径存储到Octave的搜索路径中
  • 定义函数:文件名必须与函数名相同,以.m后缀结尾,如在squareAndCube.m文件中定义一个函数,函数可以返回多个返回值。
    function [y1,y2] = squareAndCube(x)
        y1 = x ^ 2;
        y2 = x ^ 3;

  • 代价函数的定义

       在costFunctionJ.m文件中定义代价函数:

function J = costFunctionJ(A,y,theta)
    % A is the "design matrix" containing our training examples
    % y is the class label
    
    m = size(A,1);   % number of training examples
    predictions = A * theta;  %predictions of hypothesis on all m examples
    sqrErrors = (predictions - y) .^ 2;  %square errors
    
    J = 1 / (2*m) * sum(sqrErrors);

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值