【Stanford Machine Learning Open Course】5. Octave入门

这里是斯坦福大学机器学习网络课程的学习笔记。课程地址是:https://class.coursera.org/ml-2012-002/lecture/index

 

点击这里 是一份关于octave的中文入门介绍,排版较松散的40页,有充裕时间的直接去看这个吧。

 

0. octave是什么?

    用于数值计算和绘图的软件,和matlab一样精于矩阵计算,适用语法上基本无异于matlab(它的安装包相对小巧)。

1. 下载地址

    适用于windows的octave:https://class.coursera.org/ml/wiki/view?page=OctaveInstallation

2. 简单配置

    2.1 路径操作的命令跟命令行是一致的,

        pwd: 显示当前完整路径

        ls: 显示当前路径下所有文件

        cd: 转到某个路径, 如cd 'E:\Octave',就是转到你的E盘Octave目录

    2.2 更改前导符号

        默认是: octave-3.2.4.ext:1>

        可以修改为你喜欢的任意字符串:PS1("my>> "), PS1(">> ")

    2.3 查看历史命令: 用向上或向下箭头键找之前输入的命令。

    2.4 在命令后输入分号,可以不显示结果。

    2.5 help mean, help命令相当于linux下man

3. 载入和保存数据

    3.1 保存当前整个工作空间:

          save myfile: 将当前工作空间全部内容存储到myfile.mat文件中,下次打开时当前工作空间的变量等都还在。

          load myfile: 打开之前保存的工作空间

    3.2 保存当前特定的变量等

         方式同保存整个工作空间,只不过加入变量名,保存和加载的方式分别是 save myfile var, load var, 其中var是你要保存的变量

    3.3 load命令可以用于加载之前设置的数据。

4. 简单运算

    4.1 四则运算:同正常写法 2+3, 2*3, 2^3等

    4.2 向量:行向量a=[1 2 3] 或 a=[1,2,3], 列向量a=[1;2;3]

    4.3 矩阵,其实结合行向量,列向量写法即可。 A=[1 2; 3 4]

    4.4 冒号表达式: a=1:10:2, 意思是从1到10,每间隔2去一次值,结果为a=1 3 5 7 9

    4.5 特殊矩阵:

         eye(n): n阶单位阵

         ones(n)、zeros(n): 元素均为1、元素均为0的n阶矩阵

         diag([1:5]), 将向量[1:5]中的元素作为矩阵的对角元素,产出对角阵。

    4.6 矩阵操作(矩阵A)

         转置 A'、 逆 pinv(A)、行数 size(A,1)、 列数 size(A,2)、 行列数最大值length(A)

         A(i,j)取第i行第j列元素、A(i,j:k)取第i行第j至k列元素、A(i,:) 取第i行元素

5. 画图plot

    x=0:0.01:10; plot(x,sin(x))

6. 控制语句

    控制语句均是以end结尾;

   %if else end
  if expr

        %to do

   else if expr

        %to do

   else

        %ro do

   end
for i=1:100:2
     %to do
end


while expr
    %to do
end

 

7. 函数

    octave中函数支持有多个返回值。

%定义方式
function [x,y]=my_func(var1, var2)
    x=var1;
    y=var2;
end

%调用方式
[x,y]=my_func(2,3)


posted @ 2012-09-19 19:18  liyuxia713  阅读(1263)  评论(0编辑  收藏  举报