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

news2024/12/23 10:04:31

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

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

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

专题一、Python重点工具讲解【打好基础】

ØNumpy:科学计算

ØScipy:科学计算

ØSklearn:机器学习

ØMatplotlib:可视化

ØCartopy:地理数据可视化

ØGeoPandas:地理数据分析

图片

图片

专题二、常见地球科学数据讲解【掌握数据的特点】

1、站点数据:

ØGSOD

ØGHCN

图片

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进行大数据并行计算

Ø无结构数据的并行处理

Ø延迟计算

案例一:

并行处理长时间序列的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)

Python语言在地球科学交叉领域中的实践技术融合应用 (qq.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1657639.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录算法训练营第四十二天| 01背包问题(二维、一维)、416.分割等和子集

系列文章目录 目录 系列文章目录动态规划:01背包理论基础①二维数组②一维数组(滚动数组) 416. 分割等和子集①回溯法(超时)②动态规划(01背包)未剪枝版剪枝版 动态规划:01背包理论基…

【MySQL基本查询(上)】

文章目录 一、多行插入 指定列插入数据更新表中某个数据的信息(on duplicate)了解affected报告信息 二、检索功能1.select 查询1.1全列查询1.2指定列查询1.3where条件筛选子句案例 2.结果排序案例 3.筛选分页结果offset实现分页 一、多行插入 指定列插…

QT:小项目:登录界面 (下一章连接数据库)

一、效果图 登录后&#xff1a; 二、项目工程结构 三、登录界面UI设计 四主界面 四、源码设计 login.h #ifndef LOGIN_H #define LOGIN_H#include <QDialog>namespace Ui { class login; }class login : public QDialog {Q_OBJECTpublic:explicit login(QWidge…

es使用遇到的bug总结

本来版本7.4.0不行&#xff0c;最后换了个版本7.15.1就可以了&#xff0c;但又出现以下问题了&#xff1a; Beanpublic ElasticsearchClient elasticsearchClient() { // RestClient client RestClient.builder(new HttpHost("localhost", 9200,"http&q…

STM32理论 —— μCOS-Ⅲ(新)

文章目录 1. 任务调度器1.1 抢占式调度 μCos-Ⅲ全称是Micro C OS Ⅲ&#xff0c;由Micriμm 公司发布的一个基于C 语言编写的第三代小型实时操作系统(RTOS)&#xff1b; RTOS 与裸机相比最大的优势在于多任务管理与实时性&#xff0c;它提供了多任务管理和任务间通信的功能&a…

找出100~200的全部素数

解题思路&#xff1a; 判别 m 是否为素数的算法是这样的&#xff1a;让 m 被2~除&#xff0c;如果 m 不能被2~之中任何一个整数整除&#xff0c;就可以确定 m 是素数。为了记录 m 是否为素数&#xff0c;可以用一个布尔变量 prime 来表示。在循环开始时先设 prime 为真…

【Leetcode】八大排序

总述 插入排序&#xff1a;直接插入排序&#xff1b;希尔排序&#xff1b; 选择排序&#xff1a;简单选择排序&#xff1b;堆排序&#xff1b; 交换排序&#xff1a;冒泡排序&#xff1b;快速排序&#xff1b; 归并排序&#xff1b; 桶排序/基数排序&#xff1b; 直接插入排序 …

ssm105基于JAVAEE技术校园车辆管理系统+jsp

校园车辆管理系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本校园车辆管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短…

IOS Xcode证书配置和ipa打包流程(附详细图文教程)

IOS Xcode证书配置和ipa打包流程&#xff08;附图文教程&#xff09; 前言ipa文件简介证书文件简介Provisioning Profile描述文件简介当前环境版本Xcode证书配置和ipa打包流程生成Apple Distribution Certificates证书创建描述文件&#xff08;Provisioning Profiles&#xff0…

【python】模块与包

Python中的模块和包是组织和管理代码的重要工具。通过模块和包&#xff0c;你可以更好地管理和重用你的代码&#xff0c;使得代码更加模块化和可维护。 目录 前言 正文 一、模块 1、模块的分类 1&#xff09;内置模块 python解释器中默认拥有的模块可以直接使用&#xff08;…

守护数字疆域:2024年网络安全报告深度解读

在这个数据如潮涌动的数字时代&#xff0c;每一比特信息都可能是攻防双方角力的战场。《Check Point 2024年网络安全报告》不但为我们揭示了过去一年网络安全世界的风云变幻&#xff0c;更以前瞻性的视角勾勒出未来的挑战与机遇。此刻&#xff0c;让我们携手深潜这份权威指南的…

Offer必备算法37_记忆化搜索_五道力扣题详解(由易到难)

目录 记忆化搜索概念和使用场景 ①力扣509. 斐波那契数 解析代码1_循环 解析代码2_暴搜递归 解析代码3_记忆化搜索 解析代码4_动态规划 ②力扣62. 不同路径 解析代码1_暴搜递归&#xff08;超时&#xff09; 解析代码2_记忆化搜索 解析代码3_动态规划 ③力扣300. 最…

对时间序列异常检测的严格评价

论文地址&#xff1a;https://ojs.aaai.org/index.php/AAAI/article/view/20680 论文源码&#xff1a;无 会议&#xff1a;The Thirty-Sixth AAAI Conference on Artificial Intelligence 这篇论文名为《Towards a Rigorous Evaluation of Time-Series Anomaly Detection》&a…

Java毕设之基于SpringBoot的在线拍卖系统

运行环境 开发语言:java 框架:springboot&#xff0c;vue JDK版本:JDK1.8 数据库:mysql5.7(推荐5.7&#xff0c;8.0也可以) 数据库工具:Navicat11 开发软件:idea/eclipse(推荐idea) 系统详细设计 管理员功能模块 管理员登录&#xff0c;管理员通过输入用户名、密码、角色等信…

网络新手如何上手水牛社软件?我的建议与看法

水牛社是一款专为电脑用户设计的软件&#xff0c;拥有明确的著作权&#xff0c;其核心功能在于发布和整合各类网络活动任务资源、教程等&#xff0c;内容多元且不设固定分类。其靠谱程度取决于你对软件的了解程度和个人需求的适配性。 软件内部包含五个主要栏目&#xff0c;大…

前端开发攻略---打破Chrome的最小字号限制,设置任意字号大小

目录 1、原因 2、解决方法 1、原因 由于Chrome浏览器的限制&#xff0c;在网页中的字号默认最小为12px&#xff0c;更改为12px以下的字号大小是无效的 2、解决方法 1、在Chrome浏览器中调整字号最小值 优点&#xff1a;快&#xff0c;方便&#xff0c; 缺点&#xff1a;只对自…

【C++】详解STL容器之一的deque和适配器stack,queue

目录 deque的概述 deque空间的结构 deque的迭代器 deque的数据设计 deque的优缺点 适配器的概念 ​编辑 stack的概述 stack的模拟实现 queue的概述 queue的模拟实现 deque的概述 deque的设计参考了另外两大容器vector和list。可参考下面两篇文章 详解vector&#x…

python:画折线图

import pandas as pd import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties# 设置新宋体字体的路径 font_path D:/reportlab/simsun/simsun.ttf# 加载新宋体字体 prop FontProperties(fnamefont_path)""" # 读取 xlsx 文件 d…

API低代码平台介绍2-最基本的数据查询功能

最基本的数据查询功能 本篇文章我们将介绍如何使用ADI平台定义一个基本的数据查询接口。由于是介绍平台具体功能的第一篇文章&#xff0c;里面会涉及比较多的概念介绍&#xff0c;了解了这些概念有助于您阅读后续的文章。 ADI平台的首页面如下&#xff1a; 1.菜单介绍 1.1 O…

交友软件源码-源码+搭建+售后,上线即可运营聊天交友源码 专业语聊交友app开发+源码搭建-快速上线

交友小程序源码是一种可以帮助开发者快速搭建交友类小程序的代码模板。它通常包括用户注册、登录、个人信息编辑、匹配推荐、好友聊天等常见功能&#xff0c;以及与后台数据交互的接口。使用这种源码可以极大地缩短开发时间&#xff0c;同时也可以根据自己的需求进行二次开发和…