计算整月SST数据的平均值

Calculate average value of SST data of a whole month

我有一个地区 30 天的 SST 数据。但是,每天(几天)的部分数据会丢失,如下图所示。所以,我想计算这30天的这些获得的SST数据的平均值。由于错过了一些日子。

我想知道如何计算这 30 天的平均 SST 值?我的数据是 .mat 格式。

例如,是否有任何函数(在 Matlab 或 Python 中)可以用来计算平均值,即使某些数据丢失了?

注:'NaN'表示遗漏数据

提前致谢!

只需使用 mean() 函数的 'omitnan' 标志。

% Random input array
x = rand(30, 1);

% Insert a random number of NaNs in the array
nNaN = randi(30, 1);
idx = randi(30, [nNaN, 1]);
x(unique(idx)) = NaN;

% Calculate the average
xav = mean(x, 'omitnan');