Python语言在地球科学领域中的实践技术应用教程

原文链接:Python语言在地球科学领域中的实践技术应用教程icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzUzNTczMDMxMg==&mid=2247601506&idx=6&sn=ee03d6abdbcbe0216a07340c1b49cb8d&chksm=fa820c85cdf585934051f111b1d95877ba54e71cbe74be87f9e0bd07b8d46d97bbc7de60c202&token=1175537617&lang=zh_CN#rd

前言

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

一:python重点工具
1.Numpy:科学计算
2.Scipy:科学计算
3.Sklearn:机器学习

4.Matplotlib:可视化

二:常见地球科学数据【账务数据的特点】

1、站点数据:
GSOD
GHCN

图片

2.格点观测数据
CRU

图片

CN05.1

OISST、HadSST

3、再分析:
ERA5
GLDAS

图片

4.遥感数据

GLEAM

图片

Landsat

图片

MODIS

图片

TRMM

图片

三:使用Xarray处理netCFD和Geotiff数据
Xarray

读取&写入 netCDF文件

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

Rasterio & rioxarray

专题四:使用Pandas分析时间序列数据

案例一:时间序列填补

图片

图片

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

图片

案例三:台风个数统计

图片

五:使用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遥感降水数据和GLEAN数据为例

1、案例一:空间降尺度使用NDVI、DEM和机器学习算法对TRMM降水数据降尺度

2、案例二:分析蒸散数据的年际变化
读取GLEAM数据,并分析蒸散发的年际变化
比较MODIS ET产品与GLEAM的差异

图片

3、案例三:比较多套土壤湿度产品
比较GLDAS、GLEAM和CCI SM

图片

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

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

九:使用python处理气候变化数据1观测数据

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

图片

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

图片

3、案例三:再分析数据处理

ERA5数据气温评估

十:使用python处理气候变化数据2以CMIP6数据为例

1、降尺度
Delta方法
百分位校正方法

图片

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

图片

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

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

图片

十一:使用python对WRF模式数据后处理

1、案例一:空间坐标重采样

2、案例二:风速垂直高度插值
获取风机70和100m高度的风速和风向

图片

图片

十二:使用python运行生态模型以CN05.1数据和Biome-BGC mUso生态模型为例

1、模型

2、气象数据的准备

3、控制文件生成

4、模式的运行
Muliprocesing 并行运行

5、模式后处理
结果统计

结果可视化(NPP)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深入理解大语言模型微调技术

一、概念解析 1、什么是微调(Fine-tuning)? 大模型微调,也称为Fine-tuning,是指在已经预训练好的大型语言模型基础上(一般称为“基座模型”),使用特定的数据集进行进一步的训练&am…

基于Springboot的某大药房管理系统

开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven…

小成本搏大流量:微信/支付宝小程序搜索排名优化

随着移动互联网的快速发展,小程序已成为企业和个人开发者重要的流量入口和业务承载平台。而小程序搜索排名则是影响小程序曝光量、用户获取及业务转化的关键因素。小柚在本文和大家探讨如何制定有效的优化方案,提升小程序在搜索结果中的排名。 首先跟我…

【图文教程】在PyCharm中导入Conda环境

文章目录 (1)在Anaconda Prompt中新建一个conda虚拟环境(2)使用PyCharm打开需要搭建环境的项目(3)配置环境 (1)在Anaconda Prompt中新建一个conda虚拟环境 conda create - myenv py…

Python SQL解析和转换库之sqlglot使用详解

概要 Python SQLGlot是一个基于Python的SQL解析和转换库,可以帮助开发者更加灵活地处理和操作SQL语句。本文将介绍SQLGlot库的安装、特性、基本功能、高级功能、实际应用场景等方面。 安装 安装SQLGlot库非常简单,可以使用pip命令进行安装: pip install sqlglot安装完成后…

Jenkins打包app并通过openssh上传到服务器

1、下载安装openssh 网上很多教程,包括开端口的,可以搜下 2、配置openssh根目录 进入C:\ProgramData\ssh打开文件sshd_config,添加配置ChrootDirectory D:\wxs\soft,想改端口的也在这个文件 3、安装Jenkins 参考上一篇 4、新…

WordPress采集插件大比拼:哪款才是站长的救星?

本着节约站长宝贵时间的理念,WordPress网站内容管理系统应采取自动化采集技术。因此催生了各种相应的WordPress提取插件和软件。然而,在众多可用选项面前,如何做出最佳选择成为关键问题。权衡的要素包括功能可靠性、易用性、稳定性以及定制程…

Java Bean 通用方法自动生成

原文:https://blog.iyatt.com/?p14637 使用 Lombok:https://mvnrepository.com/artifact/org.projectlombok/lombok 写了一个 Person 类,通过 Lombok 就可以生成通用的方法 package com.iyatt;import lombok.AllArgsConstructor; import l…

Linux系统中LVM与磁盘配额

目录 一、LVM逻辑卷管理 二、LVM的管理命令 物理卷管理 卷组管理 逻辑卷管理 *创建并使用LVM步骤 三、磁盘配额概述 实现磁盘限额的条件 Linux 磁盘限额的特点 四、磁盘配额管理 磁盘限额 一、LVM逻辑卷管理 能够在保持现有数据不变的情况下动态调整磁盘容量&#…

如何解决SSL证书不生效,有免费SSL证书吗?

SSL(Secure Sockets Layer)证书起着举足轻重的作用。它为网站提供加密服务,从而确保用户数据在传输过程中的安全性。然而,有时我们可能会遇到SSL证书不生效的问题,这不仅会降低网站的信任度,还可能导致数据…

支付宝支付之SpringBoot整合支付宝入门

支付宝支付 对接流程 申请阿里支付官方企业账号配置应用签约产品获取RSAKey(非对称加密)必须获得两个加密串:一个公钥,一个密钥SDK功能开发业务对接支付回调支付组件 核心所需的参数 APPID商家私钥支付宝公钥支付回调地址网关…

Python使用pymssql连接 SQLServer2008 报错:DB-Lib error message 20002, severity 9

Python使用pymssql连接 SQLServer2012没有问题,但是连接SQLServer2008就会报错DB-Lib error message 20002, severity 9,问题解决 可以打印详细连接过程的方式: import pymssql import os os.environ[TDSDUMP] stdout # 用于打印连接详细过…

安全认证Kerberos详解

文章目录 一、Kerberos入门与使用1、Kerberos概述1.1 什么是Kerberos1.2 Kerberos术语1.3 Kerberos认证原理 2、Kerberos安装2.1 安装Kerberos相关服务2.2 修改配置文件2.3 其他配置与启动 3、Kerberos使用概述3.1 Kerberos数据库操作3.2 Kerberos认证操作 二、Hadoop Kerberos…

【随笔】Git 高级篇 -- 远程与本地不一致导致提交冲突 git push --rebase(三十一)

💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…

「JavaEE」线程

🎇个人主页:Ice_Sugar_7 🎇所属专栏:JavaEE 🎇欢迎点赞收藏加关注哦! 线程 🍉线程🍌多线程🍌线程与进程的联系&区别🍌多线程编程🍌创建线程&a…

基于springboot实现英语知识应用网站系统项目【项目源码+论文说明】

基于springboot实现英语知识应用网站系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了英语知识应用网站的开发全过程。通过分析英语知识应用网站管理的不足,创建了一个计算机管理英语知识应…

vue 常用的日历排班,带农历显示组件(2024-04-16)

显示当前月日历组件,里面带农历或节日显示 后面可以丰富一些国家法定节假期的业务需求 代码 js-calendar.js 文件 var lunarInfo [0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, //1900-19090x04ae0, 0x0a5b6, 0…

【VIC水文模型】模型输入/输出参数简介

VIC水文模型输入参数简介 输入数据1.1 背景参数1.2 植被分类及属性配置1.3 土壤数据库制作1.4 气象数据库制作1.5 区域控制文件1.6 汇流文件制作 输出数据参考 VIC水文模型是基于空间分布网格化的分布式水文模型。通过将研究区域网格化,分别考虑每个计算网格内裸土和…

ThreadLocal和ThreadLocalHashMap

请直接百度详细介绍 -------------------------------------------------------------------------------------------------------------------------------- 1.ThreadLocalMap是Thread类里的一个局部变量 2.ThreadLocalMap是ThreadLocal类里的一个静态内部类, 3.ThreadL…

Java springboot使用EasyExcel读Excel文件,映射不到属性值,对象属性值都是null

如果你的类上有这个注解,去掉火或注释掉就可以了 Accessors(chain true)解决方法