0

我有一个 NetCDF 文件,其中包含变量 day(in julian) lat、lon 和臭氧。我已将该文件转换为 lon、lat 和 day(按此顺序)的 3D 矩阵。

我还有一个 .mat 文件,其中包含年、月、日(常规 1、2、3 格式)、纬度、经度在 2D 表中。

我需要将 NetCDF 文件中的臭氧值作为附加列放入 .mat 文件中,同时匹配两个文件之间的日期、纬度和经度。所以基本上,我必须找到对应于 .mat 文件的日期、纬度和经度的臭氧值,并将该值作为单独的列添加。并非所有的臭氧值都会被使用。

什么样的脚本能够做到这一点?我对 MATLAB 很陌生,这对我来说非常困难。谢谢!!!

4

1 回答 1

0

您可以查看两个选项:

A{1,1} = {'Monday 7/15';...
          'Tuesday 8/01'; ...
          'Wednesday 1/21';...
          'Thursday 2/30';...
          'Friday 11/02'};

A{2,1} = [0.1234; ...
          0.2345; ...
          0.3465; ...
          0.4576; ...
          0.5687];

B = {'Wednesday 1/21'; ...
     'Friday 11/02'};

k = 1;
for i = 1:size(A{1,1},1)
    for j = 1:size(B,1)
        if strcmp(A{1,1}(i),B(j)) == 1
            OZONE(k) = A{2,1}(i);
            k = k + 1;
        end
    end
end

或者,可能更适合儒略日期格式:

A{1,1} = [1234.5; ...
          2345.6; ...
          3456.7; ...
          4576.8; ...
          5678.9];

A{2,1} = [0.1234; ...
          0.2345; ...
          0.3465; ...
          0.4576; ...
          0.5687];

B = [2345.6; ...
     5678.9];

k = 1;
for i = 1:size(A{1,1},1)
    for j = 1:size(B,1)
        if A{1,1}(i) == B(j)
            OZONE(k) = A{2,1}(i);
            k = k + 1;
        end
    end
end

上面的两个循环示例之一应该允许您检查数据集以获取所需的日期。

于 2013-05-06T17:54:34.500 回答