• 2024-3-2公告: 重要公告:用户发帖权限更新 气象互助社 2024-3-2
  • [xarray] xarray基础入门1-1:创建xarray对象-多维数组与数据结构

    多维数组 多维数组(Multi-dimensional, N-dimensional, ND Arrays,Tensors)在计算科学、物理学、天文学、地球科学、生物信息学、工程学、金融等领域应用颇为广泛。 如果你之前学习过python语言,那你一定不会对NumPy包[2]陌生。那有个问题便可以提出,为什么不直接使用numpy数组读取地球科学数据,而要使用xarray提供的 ...

    气象互助社 | 2024-4-9
    3289
    1
    1
    [xarray] xarray基础入门1-2:创建xarray对象-xr.DataArray类

    xr.DataArray类 xr.DataArray是一个容器,能够装一个变量的信息,比如可以把温度在时空的变化放在里面。 假如温度数据在时空上全为1,那么有 可以注意到DataArray括号内的三行内容:第一行,利用Numpy包的np.ones函数创建一个3x4x2 numpy类的全1数组;第二行,我们把三个维度分别命名为x, y, z;第三行,取了一个名字Tem ...

    气象互助社 | 2024-4-9
    252
    0
    1
    [xarray] xarray基础入门1-3:创建xarray对象-xr.Dataset类

    xr.Dataset类 Dataset 的对象可以将多个变量放在一起。可以定义每一个都有相应不同维度。 Dataset由下列三个部分组成 [*]data_vars:类似于python字典从名称至值的映射关系。对于每一个变量都必须要提供维度名称 和DataArray对象或元组语法。 [*]coords: 与 DataArray类似 [*]attrs: 与 DataArray类似 作为例子,下面我 ...

    气象互助社 | 2024-4-10
    274
    0
    0
    [xarray] xarray基础入门2-1:数据读取和转换-pandas数据类型转换和读取写入

    pandas 数据类型转换和读取写入 若要由pandas对象转换为 xarray 对象或者由 xarray 转为pandas对象,可以对pandas对象使用to_xarray方法或者对 xarray 对象使用to_pandas方法进行转换。 我们先导入 pandas 包和 numpy 包,为方便后续的代码书写,as关键词对 pandas、numpy 定义了 pd、np 两个别名。 pandas(pd)包中的 ...

    气象互助社 | 2024-4-11
    253
    0
    0
    [xarray] xarray基础入门2-2:数据读取和转换-数据输入和输出

    数据输入输出 Xarray 最广泛使用的特性之一是它读写各种数据格式的能力。例如,Xarray 可以读取以下格式: [*]NetCDF/ GRIB (通过函数open_dataset / open_mfdataset, to_netcdf / save_mfdataset) [*]Zarr(通过函数 open_zarr, to_zarr) [*]GeoTIFF/GDAL rasters(通过函数 open_rasterio) NetCDF 存储 Xarray 数据结构 ...

    气象互助社 | 2024-4-13
    362
    0
    0
    [xarray] xarray基础入门3-1:数据索引和切片-基于维度名称  ...23456..134

    基于维度名称对数据进行索引和分片 在默认情况下,对于不同的维度的区分常用axis0, axis1, axis2……通过这样来区分维度是非常让人困惑的,因为在高维的情况下可能并不能准确的区分各个维度,因而引入了对维度命名的方法,比如x, y, z…… 在开始学习xarray通过维度名称对数据索引之前,先回顾在numpy中的索引(index)的 ...

    气象互助社 | 2024-4-14
    23203
    1333
    277
    [xarray] xarray基础入门3-2:数据索引和切片-基于坐标名称  ...23456..13

    基于坐标名称对数据进行索引和分片 xarray最为有特色的便是对维度的坐标映射。除了上述基于维度名称的数字索引,当然还可以利用坐标对数据进行索引。 我们先创建了一个名为arr的DataArray类型的xarray数组。这个数组的数据是4×6的符合正态分布随机二维数组,有两个维度,维度名称分别为x和y,进而我们对这两个维度映射 ...

    气象互助社 | 2024-4-15
    8321
    128
    145
    [xarray] xarray基础入门4-1:基础计算-基本数学计算  ...23456..12

    本节主要来讨论对 xarray 对象进行科学计算。同样我们先引入包,以便后续代码的调用。 示例数据 首先我们先导入所需的数据,本次使用的是经扩展重构的海表面温度 v5 数据集(Extended Reconstructed Sea Surface Temperature, abbr. ERSST)。这个数据集可追溯到 1854 年的海表面温度,并被广泛使用。 数据请在公众号 ...

    气象互助社 | 2024-4-16
    6155
    114
    55
    [xarray] xarray基础入门4-2:基础计算-插值  ...23456..24

    引入所需的包和随机数种子 创建本节所需数据数组arr 平面插值 有时候想要知道格点框中更加高分辨率的值,这时候可以使用interp函数进行数据插值。 值得一提的是,若给定插值后的范围大于原有的范围(外推)的话,在原有数据范围外的数据将会赋值为nan。 如果已经有一个包含给定插值模板的对象,只需用interp_like即 ...

    气象互助社 | 2024-4-18
    13428
    231
    216
    [xarray] xarray基础入门4-3:基础计算-广播  ...23456..8

    广播 广播(Broadcasting)是指具有不同维度数组的对齐。基于数组形状的Numpy广播规则有时可能难以理解和记住, Xarray相较Numpy提供了按维度名称(而非数组形状)进行广播的方法,免去了记忆的困难。 为说明广播在计算中的作用,下面将创建一个与纬度有关的权重因子。这个权重因子常用于描述规则经纬网格上数据的面积权 ...

    气象互助社 | 2024-4-20
    5703
    70
    54
    [xarray] xarray基础入门4-4:基础计算-降维  ...23456..26

    引入必要的包。 降维 与numpy包处理数据类似,可以针对xarray中的DataArray中任意数轴进行降维。 导入数据后,提取变量sst. 这个DataArray本质存储的是关于sst的高维(三维)数组。 在numpy中,如果要进行对某一维度以某种方式(譬如取最大、小值,平均值)进行降维,可通过指定axis参数实现。比如: 下面尝 ...

    气象互助社 | 2024-4-20
    11656
    255
    270
    [xarray] xarray基础入门4-5:基础计算-赋权降维  ...23456..16

    引入相关包和导入数据: 赋权降维 对于数组的赋权降维而言,xarray目前支持DataArray和Dataset对象,对于这两个对象的降维可采用DataArray.weighted()和Dataset.weighted()方法。目前支持带权重的以平均(mean)和求和(sum)方法降维。 为说明赋权降维,下面先创建一个关于降水数据的DataArray和一个权重的DataArray. ...

    气象互助社 | 2024-4-20
    8902
    155
    207
    [xarray] xarray基础入门4-6:基础计算-Groupby(一)  ...23456..29

    如果了解SQL数据库语言或者数据透视表,一定不会对group by这个聚合函数陌生。简而言之,group by是一种方法,能够对某些标签或者索引的局部数据进行分析。 Hadley Wickham(R语言贡献者)在2011年发表的一篇经典论文中提到 What do we do when we analyze data? What are common actions and what are common mistakes? ...

    气象互助社 | 2024-4-21
    12828
    285
    226
    [xarray] xarray基础入门4-7:基础计算- Groupby(二)  ...23456..18

    引入相关包和导入数据: Groupby(Ⅱ) 分割Ⅱ 上一期通过.groupby方法以月为键将原数据分割成12个部分。 现在有一个问题:如何知道各个分组(在这儿是month)中的元素在原分组坐标中(在这儿是time)的位置呢? 也就是查找各个分组中对应元素在原始数据中键的位置。 这里对上述的gb分割对象使用.groups方法获得。 ...

    气象互助社 | 2024-4-22
    9529
    177
    141
    [xarray] xarray基础入门4-8:基础计算-转换、重采样、时间窗  ...23456..30

    引入相关包和导入数据: 背景知识:距平 现代气候学认为在相当长的时间段(一般认为是 30 年)中,变量多年平均是一个稳定的值。因此在一个时间段中,如果能够充分认识变量随平均状态的变化趋势,那么对于预测未来情况是非常有利的。那么这个所谓随着平均态的偏移值便可称为距平(异常,anomaly). 下面便提出一个问题: ...

    气象互助社 | 2024-4-23
    15787
    291
    256
    [xarray] xarray基础入门4-9:基础计算-指数加权滑动平均、粗化、线性回归  ...23456..38

    导入数据 指数加权滑动平均 xarray 中的指数加权滑动平均 在使用之前必须安装 numbagg 包 下面来尝试一下 30 年的指数加权滑动平均 在不指定加权滑动参数的情况下,上述代码使用span方法,且作用于time维度,对应于pandas中的写法即span = 30. 应当说明的是,当前 xarray 仅支持.mean()方法,目前var()等方法尚 ...

    气象互助社 | 2024-4-24
    17797
    374
    276

    QQ|小黑屋|气象互助社 ( 陇ICP备2023004290号|陇ICP备2023004290号 )|网站地图

    Powered by Discuz! X3.5 Licensed© 2001-2024 Discuz! Team.

    返回顶部 返回版块