我每5分钟进行潮汐观察,我想将其插入1分钟的间隔。
我尝试用Python做,但是花了太多时间,所以我转到了MATLAB。问题是样条方法填充了NaN值。
下面的图片说明了问题,我希望在没有填充NaN值的情况下进行样条插值。我怎样才能让interp1
函数执行此操作?
file='NANTES_5min_nan.txt'
[date, hauteur] = lecture_hfs(file);
vect=[date(1):1/24/60:date(end)];
h_interp=interp1(date,hauteur,vect,'spline');
h_interp_lin=interp1(date,hauteur,vect,'linear');
第二个数字来自Python插值。结果很好,但遗憾的是它只有1个月的数据。当我想将它应用于整个数据(17年)时,执行永远不会结束here is the link for python figure
答案 0 :(得分:1)
您可以将vect
的{{1}}值替换为vect
NaN
的{{1}}值,而不是直接使用hauteur
作为查询点。这可以通过使用另一个(线性)插值来完成:
NaN
有点乱,可能会有更优雅的方式,但我对通过嵌套另一个插值解决这个问题的可能性着迷。