【发布时间】:2020-04-06 07:08:06
【问题描述】:
我有一个海平面高程 Z(201x151x4200) 的时间序列,其中 4200 是时间值的数量,201x151 是 xy 网格。许多 Z 值,尤其是边缘值,都有 Nans,我想测试是否可以插入这些值。我过去在matlab上对它们进行了如下测试:
z1=squeeze(Z(1,1,:))/1000;
z2=squeeze(Z(1,10,:))/1000;
z3=squeeze(Z(1,20,:))/1000;
z4=squeeze(Z(1,30,:))/1000;
z1(isnan(z1)) = interp1(find(~isnan(z1)),z1(~isnan(z1)), find(isnan(z1)),'spline');
z2(isnan(z2)) = interp1(find(~isnan(z2)),z2(~isnan(z2)), find(isnan(z2)),'spline');
z3(isnan(z3)) = interp1(find(~isnan(z3)),z3(~isnan(z3)), find(isnan(z3)),'spline');
z4(isnan(z4)) = interp1(find(~isnan(z4)),z4(~isnan(z4)), find(isnan(z4)),'spline');
然后我只需手动选择哪些可以插值,以便使用周期图获得平均频谱。我希望不必手动执行此操作,而是在某种尝试和捕获循环中。将Z压缩成2D后这可能吗?
【问题讨论】:
-
我不太明白您手动执行的操作。在任何情况下,您都可以将上述内容放在
for-loop =P