垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!

点击蓝字

关注我们


做实验前信心满满,实验设计非常棒,有必要的还搞点儿正交实验设计;

做实验时满怀激情

做完实验,却看到垃圾一样的数据,预期有差距,或者和有的波动大,哎,可是含泪也要处理完呀!

垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图1

最近在处理老师安排的地铁车站基坑监测数据,几千组的数据分析,Excel肯定是菜鸡,今天给大家介绍Matlab里面的批量处理,其中最重要的就是dir函数。


dir函数


dir函数可以获得指定文件夹下的所有子文件夹和文件,并存放在一个文件结构的数组中,

主要内容有name(文件名)、date(修改日期)、bytes(文件大小)、isdir(目录是1,不是为0)、datenum (matlab中特定的修改日期)。这个数组各结构体内容是什么样子的呢,下面一张图看的更清楚!

垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图2

dir ( ' . ' ) %列出当前目录下的所有子文件夹和子文件

dir ( ' G:\Matlab ')% 列出指定目录下的所有子文件夹和文件

dir( ' *.m' )%列出当前目录后缀是.m文件的所有文件

下面介绍通过dir函数获取目录下的所有Excel文件


dirs=dir('此处为路径\*.xlsx'); %读取路径下的指定类型文件列表,返回结构数组,此处我需要的Excel表格,所以后缀是xlsx,也可以是其他后缀名喔。

dircell=struct2cell(dirs)'; % 将结构体转换成元胞数组,转置让文件名按列排列。

filenames={dirs.name}; %取出文件名+后缀

文件名存储好之后,就可以用for循环结合xlsread函数读取每个Excel表格的数据,进行批量的处理操作啦!

for i=1:length(filenames)

Data=xlsread(filenames,'sheet1');

……

end


曲线拟合


在数据处理时,通常我们都是需要先滤波,再用指定函数拟合,得到光滑曲线。至于滤波不过多介绍啦,需要结合具体专业采用具体的方法,matlab里面也有专门的滤波函数。

下面主要介绍一下Matlab里面的拟合

首先必须要知道的就是拟合工具箱,在命令行输入cftool(x,y)即可调用,下面来看一下效果。

垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图3

点击File-Generate Code即可生成当前拟合函数,保存后(命名默认)就可以通过调用该函数来批量拟合多组数据啦!


如何返回拟合函数值呢


举个例子,我用傅里叶逼近拟合,如何调用函数,并且求指定自变量对应的数值呢?利用下面函数就可以调用啦!


fuliye=createFit(x,y);%调用保存好的createFit函数,傅里叶逼近拟合

curve=feval(fuliye,[2:1:10]);%feval可以求自变量[2:1:10],对应的因变量输出值啦


如何判断拟合效果呢


首先需要熟悉一个概念。

最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据并使得这些求得的数据与实际数据之间误差的平方和为最小。

那么对于任意的x值,就会有一个实际值y和一个拟合值y’,那么对于所有的x值,最小二乘的就是求解下面公式的最小值:

垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图4

比如用一次函数y=ax+b来拟合,系数a、b的值就要通过不断计算,使得误差的平方和最小来确定。



如果你已知数据趋势,例如低碳钢拉伸曲线,或者拟合工具箱里的基本函数已经不能满足需求,也可以自定义曲线函数来拟合数据哒,我给大家提供一个算例,关注公众号,后台回复“拟合”,即可领取啦!


垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图5
垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图6

上面是我处理后的两张基坑排桩变形图象呢,有人觉得这样图很丑,那就对了。毕导也说过:学术界是一个以丑为美的领域,没有那么多的花里胡哨啦学术图表配色原则和理工男穿衣搭配原则是类似的

当然数据处理是为了总结规律,切不可为了强凑规律而伪造数据,毕竟我们要尊重科学

关注公众号,后台回复“拟合”,即可领取自定义函数拟合m文件啦!


垃圾一样的数据,含泪也要处理完呀~Matlab让你提高数据处理效率!的图7

扫描二维码 关注我们

微信号 : Superyang_C

(2条)
默认 最新
👍
评论 点赞
学习了,谢谢分享
评论 点赞
点赞 11 评论 2 收藏 9
关注