美文网首页machine learning
Octave常用指令笔记

Octave常用指令笔记

作者: edwin1993 | 来源:发表于2017-09-26 12:45 被阅读20次
    • Octave 版本号:4.2.1

    四则:

    图片.png

    逻辑运算

    图片.png

    变量相关

    图片.png

    在拥有GUI的Octave中,所有变量在左侧栏中有所显示:

    图片.png

    矩阵相关

    • 生成固定步长的行向量
      起始:步长:结尾


      图片.png
    • 生成对角矩阵:

    图片.png
    • 快速生成矩阵


      图片.png
    • 随机生成矩阵

    图片.png
    • 获取矩阵规模
    图片.png
    • 读取矩阵内的数值
    图片.png
    • 修改矩阵内的数值
    图片.png
    • 向矩阵添加行列
    图片.png
    • 矩阵与向量之间的转换
    图片.png 图片.png

    路径相关的操作

    类似于linux,不在此详细说明

    图片.png

    数据加载

    通过ones(500,2)生成了一个500*2的矩阵,随后存储起来,并clear了变量。

    图片.png

    通过load加载刚才存储的ans并打印出来,发现ans与刚刚生成的内容一致。


    图片.png

    矩阵计算

    初始:


    图片.png

    " .运算符"
    “.”在这里起到的作用是表明计算为对应位置的计算,如A * B是不能相乘的因为他们都是 3 * 2的矩阵,但是.*使得他们对应位置相乘。.^2则是对应位置取平方。

    图片.png

    1./为取倒数

    图片.png

    幂运算
    e^n 次方

    图片.png

    绝对值

    图片.png

    转置

    图片.png

    取最大值
    值得一提的是,因为A为矩阵,所以max(A)获得的是每列最大的值

    图片.png
    max(A)是下面这个写法的缩写 图片.png

    找到大于某值的元素
    计数序列从左到右,按列计数。
    1表示第一列的第一个,2表示第一列的第二个...

    图片.png

    和、积、取整等

    图片.png 图片.png

    矩阵化为向量

    图片.png

    求逆矩阵

    图片.png

    画图

    • 轴线图
    t = [0:0.01:0.98]
    y1 = sin(2*pi*4*t)
    plot(t,y1)
    
    图片.png

    要使新图在旧图的基础上进行绘制,则需要使用hold on;

    plot(t,y1)
    y2 = cos(2*pi*4*t);
    hold on
    plot(t,y2,'r')
    xlabel('time')
    ylabel('value')
    legend('sin','cos')
    title('my plot')
    
    图片.png

    可以使用指令分别打开两个图

    figure(1); plot(t,y1)
    figure(2); plot(t,y2)
    
    图片.png

    也可以在同一个图中进行分割
    subplot(1,2,1)中前面的两个数表示分割为1*2的块,而1表示现在使用第一块。

    subplot(1,2,1)
    plot(t,y1)
    subplot(1,2,2)
    plot(t,y2)
    axis([0.5 1 0 1])
    

    axis([0.5 1 0 1])将改变右图的坐标轴,x轴为0.5-1,y轴为

    图片.png
    • 可视化矩阵
    A = magic(5)
    imagesc (A)
    colorbar
    

    图中不同颜色表示不同的数值

    图片.png

    控制关键字

    • for
      for 和 end 为一组,其内部的句子在没有遇到end句柄的时候不会执行。


      图片.png
    • while
      while同理


      图片.png
    • break
      这次的语句中使用到了嵌套,可见end的匹配规则为就近。因为octave的语句格式不关注缩进,所以对关键字句柄一定要注意。


      图片.png
    • if else

    图片.png

    函数

    创建了一个函数,函数名为squareThisNumber.m


    图片.png

    在octave中调用:


    图片.png
    函数必须以.m结尾,否则就会出现“未定义”错误。
    另外,返回值支持多返回值:
    function [y1 y2] = squareAndCubeThisNumber(x)
    
    y1 = x^2
    y2 = x^3
    
    图片.png

    也支持多个变量输入

    function J = costFunction(X,y,theta)
    
    % X is the 'design matrix' play the role of the training examples
    % y is the class labels of X
    
    m = size(X,1); % get the number of examples
    prediction = X * theta;
    sqrErrors = (prediction - y).^2;
    
    J = 1/(2*m)*sum(sqrErrors);
    

    相关文章

      网友评论

        本文标题:Octave常用指令笔记

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