Octave快速入门(3)——数据操纵

首先准备数据:

>>A = [1 2; 3 4; 5 6];
>>B = [11 12; 13 14; 15 16];
>>C=[1 1; 2 2];

1. 矩阵乘法

>>A*C
ans =

    5    5
   11   11
   17   17

2. 点乘法

A中每一个元素与B中对应的元素相乘

>>A .* B
ans =

   11   24
   39   56
   75   96

>>

3. 位运算

在Octave中,“.”一般表示位运算

>> A .^2        % 每一个元素进行平方
ans =

    1    4
    9   16
   25   36
>>v = [1 2 3]
v =

   1   2   3

>>1 ./ v          % 求每一个元素的倒数
ans =

   1.00000   0.50000   0.33333

>>

自然对数运算

自然对数是以常数e为底数的对数

>>v =[2.71828, 10, 100]
>>log(v)        #log函数是自然对数函数
ans =

   1.00000   2.30259   4.60517

自然指数函数


>>v = [1,2,3]
>>exp(v)
ans =

    2.7183    7.3891   20.0855

绝对值

>>v = [-1,2,-3]
>>abs(v)
ans =

   1   2   3

矩阵转置

>>A=[1,2;3,4;5,6];
>>A'
ans =

   1   3   5
   2   4   6

求最大值

>>v= [100,89,20];
>>max_value = max(v);
>>[m_value,m_index] = max(v);

>>A = [8,1,6;3,5,7;4,9,2];
>>max(A,[],1)% 求每列的最大值
ans =

   8   9   7

>>max(A,[],2)% 求每行的最大值
ans =

   8
   7
   9

求和

>>A = [8,1,6;3,5,7;4,9,2];
>>sum(A)
ans =

   15   15   15

>>sum(A,1)   % 按列求和
ans =

   15   15   15

>>sum(A,2)   % 按行求和
ans =

   15
   15
   15

逆矩阵


>>A=[-2,1;4,-3];
>>B = pinv(A)    % 逆矩阵
B =

  -1.50000  -0.50000
  -2.00000  -1.00000

>>A*B
ans =

   1.0000e+00  -9.9920e-16
   8.8818e-16   1.0000e+00

四舍五入

>>A = [3.14;3.68];
>>floor(A)    %向下四舍五入
ans =

   3
   3

>>ceil(A)    %向上四舍五入
ans =

   4
   4

你可能感兴趣的:(Octave快速入门(3)——数据操纵)