Octave数据加载移动操作

Octave移动加载数据


如果你有一个机器学习问题,你怎样把数据加载到Octave中?

  • 怎样把数据存入一个矩阵?
  • 如何对矩阵进行相乘?
  • 如何保存计算结果?
  • 如何移动这些数据并用数据进行操作?

这里构建一个3行2列的矩阵,Octave中的size()命令返回矩阵的尺寸
Octave数据加载移动操作

设置sz=size(A),其实第一个元素是3,第二个元素是2,对应A的行与列,表示矩阵sz维度
Octave数据加载移动操作
你也可以再将size()命令进行size进行计算,返回sz矩阵的行列,即1行2列,也就是1x2矩阵。

这里可以通过size命令size(A,1),计算A矩阵的第一个元素,返回A矩阵的第一个维度的尺寸,也就是A矩阵的行数。
Octave数据加载移动操作

同样,通过size命令size(A,2),计算A矩阵的第二个元素,返回A矩阵的第二个维度的尺寸,也就是A矩阵的列数。
Octave数据加载移动操作

对于向量与矩阵,除了size()命令之外,还可以使用length()进行计算
由于矩阵A是3x2的矩阵,最大的维度应该是3,因此该命令会返回3
Octave数据加载移动操作
类似地,若一个1x5的矩阵,使用length()将会返回5
Octave数据加载移动操作

如何在系统中加载数据和寻找数据

Octave数据加载移动操作

通过who命令,显示出目前在octave工作空间中的所有变量
Octave数据加载移动操作
另外可以通过whos命令,对所有变量进行更详细地进行查看
Octave数据加载移动操作
可以使用clear命令,对工作空间中的变量进行删除
Octave数据加载移动操作

显示featuresX
Octave数据加载移动操作
显示priceY
Octave数据加载移动操作

另外一个问题是,我们怎么储存数据?
这里可以设变量V = priceY(1:10),作用是将向量Y的前10个元素存入V中
Octave数据加载移动操作

假如我们想把它存入硬盘,你们可以使用save filename.mat V
save会将变量V存成一个叫指定名称,以.mat为后缀的文件
Octave数据加载移动操作
这个命令会把数据按照二进制形式储存,或者说是更压缩的二进制形式,因此如果变量V是很大的数据,那么压缩幅度也更大,
占用空间也会更小。
如果你想把数据存成别人能看懂的形式,那么可以使用下面的命令:
Octave数据加载移动操作

下面继续回到操作数据
假设矩阵A还是之前那个,那个根据(x,y)的索引值,即可打印出对应的x行y列的值。
Octave数据加载移动操作

使用A(:,2),这将返回矩阵A中第二行的所有元素,其中冒号":"表示该行或者该列的所有元素。
Octave数据加载移动操作

使用A(2,:),这将返回矩阵A中第二列的所有元素
Octave数据加载移动操作

除此之外,这里还可以取A矩阵的第一个索引值为1或3的元素,也就是说取得的是A矩阵的第一行和第三行的每一列,
其中冒号表示的是取这两行的每一列元素
Octave数据加载移动操作

同样地,这里可以重新对A矩阵的第二列进行赋值,实际上是取出了A取值的第二列,再将一个列向量赋给它,因此第一列保持不变。
Octave数据加载移动操作

接下来,可以把A设为A = [A,[100; 101; 102]],这样做的结果是在原矩阵的右边附加了一个新的列矩阵,
就是把A矩阵设置为原来的A矩阵再从右边附上一个新添加的列矩阵。
Octave数据加载移动操作

值得一提是,还有一个小技巧,就是如果你输入A(

上一篇:为什么说Python是最伟大的语言?看图就知道了


下一篇:英国本科没毕业怎么办