小编nic*_*way的帖子

将 numpy.polyfit 应用于 xarray 数据集

Xarray 是否支持 numpy 计算函数,例如 polyfit?或者是否有一种有效的方法可以将此类函数应用于数据集?

示例:我想计算拟合到两个变量(温度和高度)的直线的斜率,以计算失效率。我有一个数据集(如下),其中包含这两个维度为(垂直、时间、xgrid_0、ygrid_0)的变量。

<xarray.Dataset>
Dimensions:    (PressLev: 7, time: 48, xgrid_0: 685, ygrid_0: 485)
Coordinates:
    gridlat_0  (ygrid_0, xgrid_0) float32 44.6896 44.6956 44.7015 44.7075 ...
    gridlon_0  (ygrid_0, xgrid_0) float32 -129.906 -129.879 -129.851 ...
  * ygrid_0    (ygrid_0) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
  * xgrid_0    (xgrid_0) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... …
Run Code Online (Sandbox Code Playgroud)

python numpy python-xarray

6
推荐指数
1
解决办法
1677
查看次数

具有多个条件的xarray.where()

我有一个具有土地覆盖类型的dataArray。我想掩盖列表中的某些值。是否可以在多个条件下使用xr.where()函数?

import numpy as np
import xarray as xr
a = xr.DataArray(np.arange(25).reshape(5, 5), dims=('x', 'y'))
print a
LC = [10,12,19]
a.where((a == LC[0]) | (a == LC[1]))
Run Code Online (Sandbox Code Playgroud)

这使:

 <xarray.DataArray (x: 5, y: 5)>
array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14],
       [15, 16, 17, 18, 19],
       [20, 21, 22, 23, 24]])
Coordinates:
  * x        (x) int64 0 1 2 3 4
  * y        (y) int64 0 1 2 3 4

<xarray.DataArray …
Run Code Online (Sandbox Code Playgroud)

python python-xarray

2
推荐指数
1
解决办法
1621
查看次数

标签 统计

python ×2

python-xarray ×2

numpy ×1