深度学习之Octave使用二

>> A = [1 2;3 4;5 6]
A =
   1   2
   3   4
   5   6
>> sz = size(A)
sz =
   3   2
>> size(A,1)
ans =  3
>> length(A)
ans =  3
>> B = [1 2 3 4 5 6];
>> length(B)
ans =  6
>> length([9 8 7 6 5])
ans =  5

size(A)返回矩阵的尺寸,也就是行数和列数,得到的是一个一行,两列的向量,因此size(A,1)返回sz的第一个元素,也就是A的行数,length(A)返回A的最大的那个维度,通常我们用length是获取向量的尺寸,也不用在矩阵。

>> pwd
ans = /Users/Admin

pwd命令显示Octave当前的路径,我们用cd来改变路径,然后通过“load 文件名”或者“load('文件名')”来加载文件到Octave,who命令能显示当前Octave储存的变量,whos命令还能打印出变量的维度及占用内存空间以及数据类型,clear命令可以删除变量

>> cd /Users/Admin/Desktop/data
>> ls
history.dat
>> load history.dat
>> who
Variables in the current scope:
A        B        C        a        ans      b        history  sz       w
>> whos
Variables in the current scope:

   Attr Name         Size                     Bytes  Class
   ==== ====         ====                     =====  =====
        A            3x2                         48  double
        B            1x6                         48  double
        C            1x5                         24  double
        a            1x100                      800  double
        ans          1x16                        16  char
        b            1x5                          5  char
        history      4x2                         64  double
        sz           1x2                         16  double
        w            1x10000                  80000  double

Total is 10148 elements using 81021 bytes
>> clear history
>> who
Variables in the current scope:
A    B    C    a    ans  b    sz   w

将history的第2到7个元素赋值到v,然后存储到copy.mat文件

>> v = history(2:7)
v =
   2290   2345   2431   2534   1098   2732
>> save copy.mat v;

我们继续清除所有变量,然后加载刚才存储的copy.mat文件并打印

>> clear
>> load copy.mat
>> whos
Variables in the current scope:

   Attr Name        Size                     Bytes  Class
   ==== ====        ====                     =====  =====
        v           1x6                         48  double

Total is 6 elements using 48 bytes
>> v
v =
   2290   2345   2431   2534   1098   2732

我们还能以我们想要的方式去存储数据

>> save copy.txt v -ascii

有关数据操作

>> A = [1 2;3 4;5 6];
>> A(3,2) %A的第三行,第二列的元素
ans =  6
>> A(2,:) %第二行
ans =
   3   4
>> A([1,3],:) %A的第1,3行组成的矩阵
ans =
   1   2
   5   6
>> A(:,2) = [9;8;7] %重新赋值A的第二列元素
A =
   1   9
   3   8
   5   7
>> A = [A,[10;11;12]]  %添加新的列
A =
    1    9   10
    3    8   11
    5    7   12
>> A(:)  %A的所有元素组成的向量
ans =
    1
    3
    5
    9
    8
    7
   10
   11
   12

继续

>> A = [1 2;3 4;5 6];
>> B = [11 12;13 14;15 16];
>> C = [A B] %等同于C = [A,B]
C =
    1    2   11   12
    3    4   13   14
    5    6   15   16
>> C = [A;B] %这里可以理解为分号的意思相当于换行
C =
    1    2
    3    4
    5    6
   11   12
   13   14
   15   16


参考资料

https://www.coursera.org/learn/machine-learning/

猜你喜欢

转载自blog.csdn.net/junjun150013652/article/details/80641792