我正在寻找一种简洁的方法来对 DataArray 的单个维度进行算术运算,然后将结果作为新的 DataArray 返回(已更改和未更改的部分)。在 pandas 中,我会使用 df.subtract() 来执行此操作,但我还没有找到使用 xarray 执行此操作的方法。
以下是我如何从 pandas 的 x 维度中减去值 2:
data = np.arange(0,6).reshape(2,3)
xc = np.arange(0, data.shape[0])
yc = np.arange(0, data.shape[1])
df1 = pd.DataFrame(data, index=xc, columns=yc)
df2 = df1.subtract(2, axis='columns')
Run Code Online (Sandbox Code Playgroud)
对于 xarray 虽然我不知道:
da1 = xr.DataArray(data, coords={'x': xc, 'y': yc}, dims=['x' , 'y'])
da2 = ?
Run Code Online (Sandbox Code Playgroud) 我想测试变量是否是任何类型的 Shapely 几何体。该变量也可能是列表或日期时间。我可以分别测试各种 Shapely 几何形状,例如:
if type(var) in [shapely.geometry.linestring.LineString, shapely.geometry.point.Point, ...]:
print(True)
Run Code Online (Sandbox Code Playgroud)
但是有没有类似is_shapely()函数的东西呢?
我正在向 xarray 数据集添加变量,当我完成后,我想提取一个键列表,但我找不到这样做的方法。
d = xr.Dataset()
d['key1'] = [1, 2]
d['key2'] = [3, 4]
Run Code Online (Sandbox Code Playgroud)
我想要的结果是
keylist = ['key1', 'key2']
Run Code Online (Sandbox Code Playgroud)