购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

0.4 数据处理

(23)如何删除缺失值?

在MATLAB中使用NaN(Not-a-Number)表示缺失值,例如:

img

判断矩阵(向量)某一元素是否为NaN时不能使用如下方式:

img

需要使用isnan函数。使用如下方式可以删除缺失值:

img

运行结果为:

img

可以看到缺失值已经被删除了。

(24)如何将字符串转变为命令执行?

使用eval函数可以将字符串转变为命令执行,参考下例:

img

运行结果为:

img

有时候巧妙地使用eval函数会使某些程序实现起来更加方便灵活。

(25)如何向一个向量追加元素?

这在MATLAB中非常容易实现,见下例:

img

运行结果为:

img

(26)如何移除矩阵的某行(列)数据?

这涉及MATLAB中矩阵的一些操作,见下例:

img

运行结果为:

img

(27)如何比较两个矩阵是否相同?

比较每个元素是否相同,如果每个元素都相同,那么这两个矩阵也相同。可以使用循环达到这一目的,但使用all函数可以更方便地实现这一目的。all函数会检查一个矩阵的每一列是否都为非零或者逻辑真,见下例:

img

运行结果为:

img
img

(28)如何去掉数据中的重复元素?

参考unique函数,unique函数可以去掉矩阵中的重复元素,见下例:

img

运行结果为:

img

(29)如何求数据的极值?

使用min和max函数可以分别求数据的极小值和极大值,见下例:

img

运行结果为:

img

(30)如何求矩阵最大(小)值并返回其行列号?

主要有几种方式,见下面的实例:

img
img

运行结果如下:

img
img

(31)如何判断数据是否为数字?

参考isnumeric函数。

(32)如何从一组数据中随机抽取数据?

使用randsrc函数可以从一组数据中按照指定概率随机抽取数据,其用法之一如下:

img

是从alphabet数据中按照概率prob抽取数据生成一个 m × n 的矩阵。见下例:

img

即从[-3 -1 1 3]中抽取数据生成5×5的矩阵,并且使得-3和3出现的概率为0.2,-1和1出现的概率为0.3。运行结果(由于是随机抽取数据,所以多次运行结果可能不同)为:

img

(33)如何将数据标准化?

使用zscore函数可以将数据标准化,这里标准化的定义是将数据减去其均值再除以其标准差,见下例:

img

运行结果如下: 5iWi+I2cQSfIfYdfgHwvIBl23k/vGgf96gTdSILM3bcPal8dLWk0sbYLoTSl9Nan

img
点击中间区域
呼出菜单
上一章
目录
下一章
×