MathScript分析和处理数据。

8.1 常用数据统计函数

8.1.1 利用脚本文件存储数据

数据采集卡采集的数据通常以表格方式存储,每列代表一个通道,每行代表某次检测的各通道值。
image.png

8.1.2 求矩阵的平均值、最大值和最小值mean max min median

MathScript中的函数默认情况下按列的方式进行计算。很多函数允许输入第2个参数,当参数值为1时,则按列计算;值为2时表示按行计算。
行列可以通过矩阵转置来完成。median函数获取每列自动排序后的中值。取中值函数是数据处理中非常常用的函数。

8.1.3 差分函数diff

差分函数diff在数据统计中使用很普遍,可以用它来求相邻元素的差值,第2个参数用于选择阶数(进行几次差分运算),默认为行差分。

8.1.4 标准方差函数std

对于矩阵是以列为单位进行运算的。

8.1.5 相关函数corrcoef

用来判断两组数据是否有内在的关系,返回值越接近1,表示两组数据存在的关系越密切,返回值越小则关系越不密切。

8.1.6 去除趋势函数detrend

用来去掉数据中包含上升或下降的趋势,经常用于振动处理中。
image.png

8.1.7 判断区间内元素出现的次数 histc

8.1.8 数据插值

  1. time = [1 3 8 12 15 20 24];
  2. tem = [8 9 16 23 22 18 10];
  3. time_i = 1:0.01:24;
  4. tem_i = interp1(time,tem,time_i,'linear');
  5. plot(time_i,tem_i,'g')
  6. legend('interp1')
  7. xlabel('time_i')
  8. ylabel('tem_i')

image.png

8.1.9 曲线拟合

曲线拟合和插值的不同之处在于插值中原有的数据点没有丝毫改变,而曲线拟合试图找出一个能用数学公式来描述的曲线,因此所有的数据都会发生变化。曲线拟合中比较常见的是最小二乘法,遵循的原则是原始数据点和拟合后曲线上的对应点的平方差是否达到最小。