1. 程式人生 > >機器學習筆記(五) octave入門

機器學習筆記(五) octave入門

   這一節我們主要用來熟悉octave的使用。

   octave和matlab一樣,主要用來數值計算和模擬。尤其精於矩陣運算:求解聯立方程組,計算矩陣特徵值和特徵向量等等。

   矩陣大小:size(A)  輸出:行m,列n

                      size(A,1)  輸出:行m

                      size(A,2)  輸出:列n

   兩矩陣相乘:A*B

   兩矩陣對應元素相乘:A,*B(A、B維度保持一致)

   求對數:log(A)

   求絕對值:abs(A)

   矩陣元素加減一個值:A+1

   求逆矩陣:pinv(A)

   矩陣轉置:A‘

   隨機矩陣:rand(3),結果是一個3*3的隨機矩陣

   找最大值:

   a=[1 2 3]    v=[1;2;3]    A=[1 2 3;4 5 6]

   行資料的最大值:max(a)  輸出:3

                                [val,index]=max(a)  輸出:val=3,index=3  最大值位於索引為3的位置

   列向量的最大值:max(v)  輸出:3

   矩陣中的最大值:max(A)  輸出:4 5 6

                                [val,index]=max(A)  輸出:val=4 5 6,index=2 1 2  每一列的最大值分別是4 5 6,分別位於每列的2 1 2上。

   按列找最大值:max(A,[ ],1)或者max(A)

   按行找最大值:max(A,[ ],2)

   矩陣中的最大值:max(max(A))

   求和:

   a=[1 2 3]    v=[1;2;3]    A=[1 5 3;4 2 6;3 1 5]

   行資料求和:sum(a)  輸出:6

   列向量求和:sum(v)  輸出:6

   矩陣求和:sum(A)  輸出:8  8  14    結果是每一列的和

   按列求和:sum(A,1)

   按行求和:sum(A,2)

   矩陣全部元素求和:sum(sum(A))

   對角線求和:sum(sum(A,*eye(3)))

   求積:

   行資料求積:prod(a)  輸出:6

   這裡與求和類似

   元素值的大小比較:a<3   輸出:1 1 0    每列的值與3比較,真是1,假為0

   四捨五入:a=[1.2  5  6.8]

   floor(a)=[1  5  7]

   ceil(a)=[2  5  7]    這裡是遇小數進位,和上面有區別

   plot繪圖:

   plot(x,y)  

   eg:t=[0:0.01:0.99]

           y=sin(2*pi*4*t)

           plot(t,y)

   plot(x,y,'r'):'r'表示曲線是紅線

   座標軸標籤:xlabel(‘x’);ylable(‘y’)

   圖形名稱:title(‘myplot’)

   兩個圖形疊加和停止疊加:

   plot(x,y1);

   hold on;

   plot(x,y2);

   hold off;

   同時展現多個圖形:

   不同視窗展現: figure(1);       第一個視窗

                             plot(x,y1);

                             figure(2);        第二個視窗

                             plot(x,y2);

   同一視窗展現: subplot(m,n,1);  視窗切成m*n部分

                             plot(x,y1);

                             subplot(m,n,2);

                             plot(x,y1);

   儲存圖片:cd 'c:\users\administrators\desktop';  儲存的路徑

   關閉圖片:close;或者close all;