Python语言在地球科学交叉领域中的技术应用

2024-06-04 20:44

本文主要是介绍Python语言在地球科学交叉领域中的技术应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python是功能强大、免费、开源,实现面向对象的编程语言,Python能够运行在Linux、Windows、Macintosh、AIX操作系统上及不同平台(x86和arm),Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。Python具有丰富和强大的库,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。除了Python标准库,几乎所有行业领域都有相应的Python软件库,随着NumPy、SciPy、Matplotlib和Pandas等众多Python应用程序库的开发,Python在科学和工程领域地位日益重要,在数据处理、科学计算、数学建模、数据挖掘和数据可视化方面的优异性能使得Python在地球科学中地理、气象、气候变化、水文、生态、传感器等领域的学术研究和工程项目中得到广泛应用并高效解决各种数据分析问题,可以预见未来Python将成为科学和工程领域的主流程序设计语言。

CMIP6月数据(500G+)

包含变量:温压湿风辐射降水

包含情景:historical、ssp126、ssp245、ssp370、ssp585

CMIP6日数据(1.8T+)

包含变量:温压湿风辐射降水

包含情景:historical、ssp126、ssp245、ssp370、ssp585

全球VIPPHEN物候数据(40G+)

时间:1981-2014,年数据

空间分辨率:5.6km

ERA5-LAND陆面再分析数据(5T左右)

时间:1951.1.1-2021.12.31  时间分辨率:hourly

空间分辨率:0.1°(等角lonlat投影+wgs84)

包含11个变量:温度、气压、辐射、蒸发、降水、湿度【详情见数据说明文件】

1、提供虚拟机(Virtual Box)文件(预装好Anaconda环境,可直接使用)

2、提供原始数据和中间临时文件

专题一、Python重点工具  

Numpy:科学计算

Scipy:科学计算

Sklearn:机器学习

Matplotlib:可视化

Cartopy:地理数据可视化

图片

GeoPandas:地理数据分析

图片

专题二、常见地球科学数据 

1、站点数据:

GSOD

GHCN

图片

ISMN:国际土壤湿度测量网络数据

图片

FLUXNET:全球通量观测网络数据

图片

2、格点观测数据

CRU

图片

CN05.1

OISST、HadSST

3、再分析:

ERA5

GLDAS

图片

4、遥感数据:

GLEAM

图片

Landsat

图片

MODIS

图片

TRMM

图片

SMAP:土壤湿度主动被动遥感数据

专题三、使用Xarray处理netCDF和Geotiff数据 Xarray

读取&写入 netCDF文件

Groupby & resample 对时间、空间信息进行操作

Rasterio & rioxarray

专题四、使用Pysat进行大空间分析

1. 空间自相关分析

分析干旱事件发生的空间聚集性

2. 空间回归模型

建模气温与地形因素的空间关系

GWR模型评估地形对降水分布的局部影响 

3. 空间点模式分析

探测极端天气事件的热点区域

4. 时空数据分析

评估城市热岛效应的时空演化

专题五、使用Dask进行大数据并行计算

使用Dask进行大数据并行计算

Arrays、DataFrames

无结构数据的并行处理

延迟计算

案例一:

并行处理长时间序列的TRMM降水数据,识别极端降水事件的时空分布特征

案例二:

利用Dask并行计算,快速监测全球范围内干旱的发生、发展和持续时间

专题六、使用Pandas分析时间序列数据-1

案例一:时间序列填补

 

图片

案例二:极端风速重现期分析

图片

案例三:台风个数统计

图片

专题七、使用Pandas分析时间序列数据-2

1、环流指数与温度、降水变化的关联性

各环流指数对全球及区域温度变化的影响

环流指数与极端高温/低温事件的联系

环流指数与干旱/洪水事件的关联

环流指数对季风系统的影响

2、空间插值

使用Kriging进行站点数据插值 

使用IDW插值生成高分辨率气温场

图片

3、缺测数据插补

针对地面站点数据中的缺失值进行插补

利用机器学习算法插补遥感数据中的缺测像元

结合空间插值和时间插值等多种方法提高数据质量

专题八、使用Python处理遥感

数据1、以Landsat数据为例

1、大数据的可视化

GB级数据可视化

2、植被指数计算

图片

3、裁剪区域

使用mask掩膜文件裁剪

使用shapefile文件裁剪

专题九、使用Python处理遥感

数据2—以MODIS数据为例

1、预备工作:

Python读取HDF4-EOS数据

使用GDAL库预处理

转投影为wgs84+lonlat

拼接多景影像

2、案例一:土地利用分析(MOD12C1)

2000-2020年青藏高原土地利用分析

分析不同土地利用分类上气温和降水的变化

图片

3、案例二:生态系统生产力分析(MOD17A2)

青藏高原草场上土地利用GPP变化

分析草场GPP与降水之间关系(ERA5再分析数据)

图片

4、案例三:分析积雪覆盖时间(MOD10A2)

2000-2020年间青藏高原积雪时间统计

分析祁连山不同高程带积雪时间统计(DEM:GTOP30S)

图片

5、案例四:积雪与生产力之间的关系(MOD10A2和MOD17A2)

分析新疆北疆积雪覆盖时间与春季GPP的变化

专题十、使用Python处理站点数据以GSOD和气象共享网数据为例

1、数据的读取

读取美国NOAA的GSOD日值数据

读取气象共享网日值数据

2、数据清洗:

数据整理

异常值检测

阈值法

模型法

孤立森林

3、多时间尺度的统计:

年尺度统计

季尺度统计

4、站点插值:(随机森林树)

利用高程、经纬度插值气温数据

专题十一、使用Python处理遥感水文数据以TRMM遥感降水数据和GLEAM数据等 案例一:空间降尺度

使用NDVI、DEM和机器学习算法对TRMM降水数据降尺度

案例二:分析蒸散数据的年际变化

读取GLEAM数据,并分析蒸散发的年际变化

比较MODIS ET产品与GLEAM的差异

案例三:使用随机森林算法估算地表蒸散发

GLEAM和ERA5数据建立机器学习估算模型

在区域尺度上进行长时间序列模拟

图片

3、案例三:比较多套土壤湿度产品

比较GLDAS、GLEAM和CCI SM

图片

案例四:分析降水~蒸散发-土壤湿度关系

分析降水~蒸散发-土壤湿度的年际变化

专题十二、使用Python处理遥感和模式数据

以PKU GIMMS NDVI遥感降水数据和GLDAS数据为例

案例一:结合GIMMS NDVI和陆面模式数据分析干旱影响

获取陆面模式模拟的土壤湿度数据

建立植被生产力与干旱的响应关系

评估不同地区的干旱敏感性

案例二:青藏高原地区干旱对高寒草地生态系统的影响

基于NDVI识别青藏高原历史干旱年份

结合GLDAS模拟的土壤温湿度等数据,分析干旱对植被的影响机制

专题十三、使用Python处理气候变化数据1观测数据

案例一:百年气温趋势:CRU数据

图片

案例二:百年海温趋势:HadSST

图片

案例三:再分析数据处理

ERA5数据气温评估

专题十四、使用Python进行气候诊断分析

在GHCN站点数据基础上

使用Mann-Kendall趋势检验

使用Mann-Kendall突变分析

和Sen's slope估计气候变化趋势

使用小波分析等分析周期

专题十五、使用Python处理气候变化数据2以CMIP6数据为例

降尺度

Delta方法

百分位校正方法

图片

案例一:计算极端气候指数

图片

案例二:未来气候变化背景下中国地区GPP变化(CMIP6+MOD17+机器学习)

案例三:未来气候变化背景下中国地区土地利用变化

图片

专题十六、使用Python对WRF模式数据后处理

案例一:空间坐标重采样

案例二:风速垂直高度插值

获取风机70和100m高度的风速和风向

图片

专题十七、使用Python运行生态模型以CN05.1数据和Biome-BGC生态模型为例

1、模型讲解

2、气象数据的准备

3、控制文件生成

4、模式的运行

Muliprocesing 并行运行

5、模式后处理

结果统计

结果可视化(NPP)

原文链接icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzUyNzczMTI4Mg==&mid=2247686676&idx=3&sn=758db448cf19e1ec623538dae7453c39&chksm=fa774529cd00cc3ffcdf8e1fe1618b1e8ddaed47705e5b71a44c76161412fe86e95bb7341fe7&token=1908211715&lang=zh_CN&scene=21&poc_token=HNJ_Xmaj_1-_vLjJCeOHQIX_5RXWDfytqv6CBztN

这篇关于Python语言在地球科学交叉领域中的技术应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1031073

相关文章

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

zoj3820(树的直径的应用)

题意:在一颗树上找两个点,使得所有点到选择与其更近的一个点的距离的最大值最小。 思路:如果是选择一个点的话,那么点就是直径的中点。现在考虑两个点的情况,先求树的直径,再把直径最中间的边去掉,再求剩下的两个子树中直径的中点。 代码如下: #include <stdio.h>#include <string.h>#include <algorithm>#include <map>#

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、