重采样
原理:线性插值
如上图所示,我们每10秒进行一次采样,共得到6个采样值,现在我们像每5秒进行一次采样,在不重新做实验的情况下,对原有数据进行重采样,采用线性插值的方式,也就是每两列中插入一列,并取其平均值。
具体思路:首先将数据导入matlab,利用xlsread函数读取数据,在选择感兴趣区域,在放个循环进行插值,最后xlswrite一下就ok了。
在我拿到实验数据时,确实想过用matlab,因为数据量确实太大,但是查了下相关excel功能,好像也可以实现批量操作,所以接下来就和大家分享一下如何利用excel进行重采样。
总共分为两步:
1、每两列中间插入新的一列;
2、新的一列显示左右两列的平均值;
excel实现(以下均针对批量操作)
先在数据前面插入两行
在我们插入的两行中,对应数据前两列,写任意俩数字(位置如图所示)
选中这个矩形区域
向右拉至数据最后一列(可以是100列、1000列)
保持现在的选中状态,按下Ctrl + G
点击定位条件
选择空值 然后确定
出现上图状态
选择任意灰色区域,右键,插入,整列
此时得到下图所示效果,我们已经成功插入新的一列,接下来就是求平均值了。
求单个单元格左右两侧平均值
此时我们已经做好了一个单元格的平均值,可以看到点击此单元格后,上面会显示公式 =AVERAGE(C3,E3) ,接下来进行批量操作。
首先选中这个单元格,下拉。
此时我们第一列就做好了,如上图所示。
然后选中第一列进行复制,并保持复制状态。
选中其他新增列,按下 Ctrl + G。再和之前一样选中空白格。
出现下图所示状态
此时CTRL + V进行复制就好了。
最后一步,删除之前构建的两行辅助行,和其余空白列就好了。
结语
此方法适用于excel大量数据,批量操作,效果明显。
小数据随便玩玩就行。
能不用matlab就不用matlab,图像化编程万岁!