Google Earth Engine(GEE)——两个数据集之间沿时间维度的相关性斯皮尔曼和皮尔逊相关性分析

这篇博客探讨如何在Google Earth Engine (GEE)中,针对两个沿时间维度的数据集进行斯皮尔曼和皮尔逊相关性分析。由于数据集中存在大量缺失值,不适合直接插值处理,而是选择忽略这些值。作者提供了适用于xarray数据结构的代码示例,该代码能够处理NaNs,并且可以计算出协方差、相关性、回归斜率、截距、P值和标准误差。该方法适用于一维或三维时间序列数据,允许为数据设置滞后值进行分析。
摘要由CSDN通过智能技术生成

我试图计算 xarray 中两个数据集之间沿时间维度的相关性。我的数据集都是lat x lon x time。其中一个数据集数据缺失太多,因此插值和消除缺失并不合理,相反,我希望忽略缺失值。我有一些简单的代码,但都不符合我的具体情况。例如:

def covariance(x,y,dims=None):
    return xr.dot(x-x.mean(dims), y-y.mean(dims), dims=dims) / x.count(dims)

def correlation(x,y,dims=None):
    return covariance(x,y,dims) / (x.std(dims) * y.std(dims))

在没有数据缺失的情况下效果很好,但当然不能用于 nans。虽然这里有一个为xarray写的很好的例子,但即使使用这段代码,我也很难计算出pearson相关性而不是spearman相关性。

import numpy as np
import xarray as xr
import bottleneck

def covariance_gufunc(x, y):
    return ((x - x.mean(axis=-1, keepdims=True))
            * (y - y.mean(axis=-1, keepdims=True))).mean(axis&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

此星光明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值