如何在python中循环通过xarray并使用索引进行计算

如何在python中循环通过xarray并使用索引进行计算,python,Python,我在xarray(nino6)中有一个数据变量(sst),首先我使用enumerate为数组中数据变量的每个值分配一个索引,然后我想使用该索引计算数据变量的值。这段代码使用indizes本身而不是数据变量值进行计算,但我只是想让您展示我所做的尝试 如何循环遍历索引,但实际使用值进行计算 很抱歉,我的问题可能非常简单(我刚开始编程),但我在这里和youtube上搜索失败。如果您试图获得sst中每3个相邻数字的平均值,请按以下方式执行: lst = nino6['sst'] ssta = []

我在xarray(nino6)中有一个数据变量(sst),首先我使用enumerate为数组中数据变量的每个值分配一个索引,然后我想使用该索引计算数据变量的值。这段代码使用indizes本身而不是数据变量值进行计算,但我只是想让您展示我所做的尝试

  • 如何循环遍历索引,但实际使用值进行计算

很抱歉,我的问题可能非常简单(我刚开始编程),但我在这里和youtube上搜索失败。

如果您试图获得sst中每3个相邻数字的平均值,请按以下方式执行:

lst = nino6['sst']
ssta = []
for i in range(1,len(lst) - 1):
    a = (lst[i-1] + lst[i] + lst[i+1])/3
    ssta.append(a)

注意,在这个实现中,ssta的长度将比sst的长度小2,因为第一个和最后一个数字没有侧翼数字。您可以使用其他变体,只需获得第一个和最后一个数字的两个数字的平均值。

对于范围内的i(len(nino6['sst')):。。。nino6['sst'][i]…
是您想要的吗?您只需使用
entry
。谢谢!这很有帮助
lst = nino6['sst']
ssta = []
for i in range(1,len(lst) - 1):
    a = (lst[i-1] + lst[i] + lst[i+1])/3
    ssta.append(a)