并行Python NetCDF数据集标准化工具
项目描述
PyConform
一个用于将NetCDF数据集转换成符合定义格式的包,该格式适用于根据定义的发布标准进行发布。
- AUTHORS:
Sheri Mickelson, Kevin Paul
- COPYRIGHT:
2020, University Corporation for Atmospheric Research
- LICENSE:
有关详细信息,请参阅LICENSE.rst文件
向Kevin Paul(kpaul@ucar.edu)或Sheri Mickelson(mickelso@ucar.edu)发送问题和评论。
概述
PyConform包是一个基于Python的包,用于将模型时间序列数据转换为MIP符合(即标准化)时间序列数据。它专为CMIP6设计,特别是针对NCAR的CESM CMIP6工作流程,但我们试图以通用方式设计代码。PyConform试图将标准化问题规范步骤分为两个独立的部分
一个关于标准的规范,
一个关于转换过程的规范。
这种分离是为了使标准可以被(例如)MIP设计者定义,而转换过程可以被模型开发者(即科学家)定义。对于CMIP6,我们使用了dreqpy实用工具来定义标准,然后科学家只需要提供一行定义,说明如何将原始CESM数据转换为所需的标准输出。
目前,在创建定义时需要考虑的主要问题是以下
物理单位将自动转换,如果可能的话,根据cf_units包进行转换,
由 定义 操作产生的结果数据变量的 维度 必须可以映射到标准中指定的请求的维度,并且
在 PyConform 的 函数 模块中未提供的一些特殊操作/计算可能需要手动编写并在输出变量的 定义 中显式调用。
依赖项
PyConform 包直接依赖于 4 个主要外部包
ASAPTools (>=0.6)
cf-units
dreqpy
netCDF4-python
ply
python-dateutil
这些依赖项意味着以下依赖项
numpy (>=1.5)
netCDF4
MPI
UDUNITS2
此外,整个包旨在与 Python v2.7 和更高版本(但不包括 Python v3.0)一起工作。
版本要求尚未进行严格测试,因此早期版本可能实际上可以工作。虽然安装过程中没有提出任何版本要求,但如果已安装这些包的早期版本,则可能会出现问题。
获取源代码
目前,最新开发源代码可以通过 git 从以下网站获取
https://github.com/NCAR/PyConform
检出最新稳定标签。源代码对所有人均以只读模式提供。开发者可以更新源代码并通过 GitHub 提交拉取请求。
从源代码构建和安装
PyConform 包的安装非常简单。从上述 svn 链接检出源代码后,通过
$ git clone https://github.com/NCAR/PyConform
进入新克隆的目录
$ cd PyConform
然后,运行 Python setuptools setup 脚本。在 Unix 上,这涉及
$ python setup.py install [--prefix=/path/to/install/location]
前缀是可选的,默认前缀通常为 Linux 机器上的 /usr/local。但是,您必须有权写入前缀位置,因此您可能希望选择一个您具有写入权限的前缀位置。像大多数 distutils 安装一样,您可以使用“–user”选项安装 PyReshaper,这将自动选择(如果不存在则创建)用于安装的 $HOME/.local 目录。为此,在 Unix 机器上输入
$ python setup.py install --user
这很有用,因为 site-packages 目录对于所有用户安装都是通用的,因此只需将其添加到 PYTHONPATH 一次。
PyConform 的 文档 存储在 GitHub Pages 上。
项目详情
下载文件
下载适合您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。
源代码分发
构建分发
PyConform-0.3.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5f19898d0a359b9f1500605942acbaa5fa7a0009561516c5cd65adb0af21c928 |
|
MD5 | 95ad4246d20047896b2b30be03be25a3 |
|
BLAKE2b-256 | 9f2153c2effd8281cc2c3e3832711bf048ae2a22093f0b206e703ab14c92aa76 |
PyConform-0.3.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fa111212eed007b7a18b0c67ee502b0739c2763fd405a155027620f4159f92c1 |
|
MD5 | 7f9d2b85e337eeb049ca0f26d4354efa |
|
BLAKE2b-256 | c7fe1641279f5babf8bfe75419b55770231400cbf474cccd852f53ede2e666e4 |