推荐一个关于气象的工具包合集,主要包含以下几个部分:
- 数值模型
- 数据同化
- 雷达
- 卫星
- 计算指数
- 数据处理/分析
- 机器学习
- 可视化
- 其他资源
1、数值模型
| 包 | | —- | | wrf-python
https://wrf-python.readthedocs.io/en/latest/
WRF 结果后处理 | | CAMxtools
https://github.com/jaegunjung/CAMxtools
CAMx 和 CMAQ 结果后处理 | | salem
https://salem.readthedocs.io/en/latest/
模型结果后处理,包括 WRF 前/后处理 | | geos2cmaq
https://github.com/barronh/geos2cmaq
将 GEOS-Chem 结果映射到 CMAQ 边界条件 | | ingest_cm1
https://github.com/cwebster2/ingest_cm1
用于读取 CM1 输出文件的 Fortran 库 | | CESM_postprocessing
https://github.com/NCAR/CESM_postprocessing
基于 CESM python 的后处理代码、文档和问题跟踪的项目存储库 | | SuPy
https://github.com/sunt05/SuPy
以SUEWS(https://github.com/Urban-Meteorology-Reading/SUEWS)为计算核心的 Python 增强型城市气候模型 | | xskillscore
https://github.com/raybellwaves/xskillscore
xskillscore 是一个开源项目和 Python 包,它使用 xarray 提供确定性(以及来自适当评分的概率)预测的验证指标 | | climpred
https://climpred.readthedocs.io/
用于分析气候预测的集合预报模型的 xarray 包装器 | | esmlab
https://esmlab.readthedocs.io/
使用 xarray 进行地球系统多模型分析的工具 | | pysplit
https://github.com/mscross/pysplit
用于 HYSPLIT 航空包裹轨迹分析的软件包 | | MET
https://github.com/NCAR/MET
模型评估工具 | | MONET
https://github.com/noaa-oar-arl/MONET
模型和观测评估工具包 (MONET)。目前,它处理 CMAQ 4.7.1+、EPA AQS 表面数据、EPA AirNow 和 IMPROVE Aerosol 数据网络。目前正在努力添加 ASOS 网络、气候参考网络、探测器数据等。它将计算统计数据、制作时间序列、空间和散点图等等 |
2、数据同化
包 |
---|
DAPPER https://github.com/nansencenter/DAPPER 使用 Python 进行数据同化:实验研究包 (DAPPER)。DAPPER 支持通过各种典型测试用例和统计数据对 DA 方法进行数值研究 |
pyWRFDART https://github.com/lmadaus/pyWRFDART 一组 Python 脚本,用于使用 DART 数据同化系统运行 WRF |
PSU_WRF_EnKF https://github.com/myying/PSU_WRF_EnKF PSU WRF 集成变分数据同化系统 |
3、雷达
包 |
---|
PyART https://github.com/ARM-DOE/pyart 一个数据模型驱动的交互式工具包,用于处理天气雷达数据 |
wradlib https://wradlib.org/ 双极化雷达算法的 Python 接口 |
DualPol https://github.com/nasa/DualPol 单多普勒检索工具包 |
SingleDop https://github.com/nasa/DualPol 单多普勒检索工具包 |
ARTView https://github.com/nguy/artview 交互式雷达查看浏览器 |
PyCINRAD https://github.com/CyanideCN/PyCINRAD 解码 CINRAD 雷达数据并可视化 |
pyrad https://github.com/meteoswiss-mdr/pyrad Pyrad 是 MeteoSwiss 开发的实时数据处理框架 |
PyCWR https://github.com/YvZheng/pycwr 中国天气雷达工具包,支持中国大部分雷达格式(WSR98D、CINRAD/SA/SB/CB、CINRAD/CC/CCJ、CINRAD/SC/CD) |
4 、卫星
包 |
---|
satpy https://github.com/pytroll/satpy 用于多个卫星数据产品 |
PyCAMA https://dev.knmi.nl/projects/pycama 用于 TROPOMI Sentinel-5P Level2 产品 |
pys5p https://github.com/rmvanhees/pys5p 用于 TROPOMI Sentinel-5P Level1B 产品 |
pyresample https://pyresample.readthedocs.io/en/latest/ 重新采样 sattlelite 图像 |
TorchSat https://github.com/sshuair/torchsat TorchSat 是一个基于 PyTorch 的用于卫星图像分析的开源深度学习框架 |
5、计算指数
包 |
---|
Metpy https://unidata.github.io/MetPy/latest/index.html 计算许多 atmos 指数 |
Sharppy https://github.com/sharppy/SHARPpy 探测/全线图分析和研究计划 |
atmos https://github.com/atmos-python/atmos Python 的大气科学库 |
GeoCAT-comp https://github.com/NCAR/geocat-comp GeoCAT-comp 是 GeoCAT 项目的计算组件。GeoCAT-comp 将 NCL 的非 WRF Fortran 例程包装到 Python 中 |
6、数据处理/分析
7、机器学习
包 |
---|
hagelslag https://github.com/djgagne/hagelslag Hagelslag 是一个基于对象的严重风暴灾害预报系统 |
IDEA 实验室 http://www.mcgovern-fagg.org/idea/index.html 研究数据科学和应用人工智能/机器学习,重点关注高影响力的现实世界应用 |
EarthML https://github.com/pyviz-topics/EarthML 在地球科学中使用机器学习的工具 |
sklearn https://scikit-learn.org/stable/index.html 基于 SciPy 构建的用于机器学习的 Python 模块 |
CNTK https://github.com/Microsoft/CNTK 高级神经网络前端 |
TensorFlow https://github.com/tensorflow/tensorflow/ 使用数据流图进行数值计算的开源软件库 |
PyTorch https://github.com/pytorch/pytorch Python 中的张量和动态神经网络,具有强大的 GPU 加速功能 |
MXNet https://github.com/apache/incubator-mxnet 轻量级、便携、灵活的分布式/移动深度学习,具有动态、突变感知的数据流 Dep 调度器;适用于 Python、R、Julia、Go、Javascript 等 |
XGBoost https://github.com/dmlc/xgboost 一个并行优化的通用梯度提升库 |
CatBoost https://github.com/catboost/catboost 决策树库上的通用梯度提升,具有对 R 的开箱即用的分类特征支持 |
LightGBM https://github.com/Microsoft/LightGBM 微软基于决策树算法的快速、分布式、高性能梯度提升(GBDT、GBRT、GBM 或 MART)框架,用于排名、分类和许多其他机器学习任务 |
hur-detect https://github.com/eracah/hur-detect 极端天气事件的深度半监督对象检测 |
pyod https://github.com/yzhao062/pyod 用于可扩展异常值检测(异常检测)的 Python 工具箱 |
8、可视化
包 |
---|
PyNGL https://github.com/NCAR/pyngl PyNGL(“pingle”)是一个建立在 NCL 图形库之上的 Python 模块 |
basemap https://matplotlib.org/basemap/ 使用 matplotlib 绘制地图投影(带有海岸线和政治边界) |
Cartopy https://scitools.org.uk/cartopy/docs/latest/ Cartopy 是一个 Python 包,旨在使绘制地图以进行数据分析和可视化变得容易 |
cmaps https://github.com/hhuangwx/cmaps 使在 matplotlib 中使用用户定义的颜色图更容易。默认颜色图来自NCL网站(http://www.ncl.ucar.edu/Document/Graphics/color_table_gallery.shtml) |
holoviews https://github.com/pyviz/holoviews 使数据分析和可视化无缝且简单 |
earth wind map https://github.com/cambecc/earth 一个可视化全球天气状况的项目http://earth.nullschool.net |
9、其他资源
包 |
---|
pangeo https://pangeo.io/ 大数据地球科学的社区平台 |
ECCO https://ecco-v4-python-tutorial.readthedocs.io/index.html 全球海洋和海冰状态估计教程 |
NMC-WFT https://github.com/nmcdev NMC, CMA天气预报技术研发中心 |
Python 和气候变率研究的实际应用 https://github.com/royalosyin/Python-Practical-Application-on-Climate-Variability-Studies 本教程的主要目标是在实际应用和管理通常用于探索气象时间序列的统计工具中的专业知识的转移,重点是研究与气候变率和气候相关问题的应用改变 |
用于气候和气象数据分析和可视化 https://github.com/nicolasfauchereau/Auckland_Python_Workshop |
显示如何使用 ECMWF 服务和数据的示例笔记本 https://github.com/ecmwf/notebook-examples |