python-海洋数据处理
文章平均质量分 60
简朴-ocean
二年级在读
海洋科学专业
Python学习记录
物理海洋方向
大气波动动力学
WRF数值模拟
公众号:简谱学记
展开
-
python | x-y 网格切片
通常, 我们处理的毕竟完善的nc产品,一般呈现未的维度,且lon和lat都是规则的网格,我们可以方便的使用选择合适的区域进行切片。但是,部分nc产品比如卫星轨道或者模式输出的数据,可能并没有处理为规则的网格产品,其经纬度信息以x和y表示了分辨率对应的网格格点数量。如下面这种情况:那么,在这种分布下,如何进行区域的切片呢。在python中实现对于x-y网格的区域截取,相关数据和代码放到了GitHub上,感兴趣的朋友可以试试。原创 2024-09-20 10:58:38 · 222 阅读 · 0 评论 -
Python | 读取.dat 文件
使用matlab可以输出为.dat或者.mat形式的文件,之前介绍过读取.mat后缀文件,今天正好把.dat的读取也记录一下。复习了一下使用pandas读取.dat文件的相关函数,以及pandas的一些基础命令,绘图多y轴的方法。原创 2024-09-20 10:57:56 · 460 阅读 · 0 评论 -
Python | Windows | 安装一个常用的海洋气象环境
经常会看到一些交流群里讨论关于python虚拟环境中某些库安装不成功的问题,比如说关于地学数据处理和绘图的salem、geopandas、关于wrf输出的wrf-python,以及一些仿照matlab绘图风格的basemap。这里,将我常用的一个安装方法分享给大家,便于在安装的虚拟环境出现问题时,可以比较便捷、快速的安装常用的库。包括常用到的以上提供了一个关于海洋-气象专业中常用的python库的便捷安装方法,比如salem、geopandas、basemap,可以非常方便的处理不同虚拟环境的问题。原创 2024-08-26 21:08:25 · 869 阅读 · 0 评论 -
Python | 处理海洋2C 数据 | 非标准时间格式
最近,师弟在用Python读取某海洋2C数据时,突然冒出一个报错:“时间单位的参考日期无效,当前日期 00:00:00.0这让我回想起,似乎在很久很久以前,我处理SMAP和Argo数据时也遇到过类似的问题。为了不让未来的师弟师妹们再次被这种问题困扰,我决定在这里记录一下这个坑。希望未来再看到这条记录时,能少叹气、多微笑,毕竟已经知道怎么解决了嘛!原创 2024-08-26 21:07:28 · 959 阅读 · 0 评论 -
Python | Linux | 解析Himawari-8/9 | Standard Data
之前一个相关的工作需要解析Himawari-8/9 Standard Data文件,因为他是二进制的,之前没有处理过,导致完全摸不着头脑。但是需要注意的是,一个时刻的文件包含的信息可能比较少,需要同时读取多个时刻的文件合成的nc文件才能获得有效的结果。说的比较含糊,总之是谁用谁知道。第二和第三个替换为你的netcdf中的include和lib的安装路径,意思就是告诉系统你的netcdf库安装的位置。下面找一个具体的数据进行测试,这部分的代码我通过python来实现,在python中调用刚刚编译的程序。原创 2024-08-26 21:06:37 · 869 阅读 · 0 评论 -
Python | 计算位涡平流项
最近忙着复习、考试…都没怎么空敲代码,还得再准备一周考试。。。等考完试再慢慢更新了,今天先来浅更一个简单但是使用的在做动力机制分析时,我们常常需要借助收支方程来诊断不同过程的贡献,其中最常见的一项就包括水平平流项,如下所示,其中var表示某一个变量,V表示水平风场。−V⋅∇var−V⋅∇var以位涡的水平平流项为例,展开为−u∂pv∂xv∂pv∂y−u∂x∂pvv∂y∂pv位涡受背景气流的调控作用。原创 2024-06-30 19:59:41 · 567 阅读 · 0 评论 -
如何在python中读取matlab输出的.mat文件
经常会使用matlab处理数据,比如之前在进行空间滤波发现matlab自带的空间滤波函数。但是,由于后续使用python绘图更熟练一点,所以涉及到在python中读取matlab输出的文件,一般以.mat文件为主。下面测试了几种读取方式,选了一个比较好用的方式。这里简单将读取的.mat1、array数组(如网格数据)2、str字符串列表(如网页链接)总体上,比较了对于纯数组array以及纯字符str输出的mat文件在python中的读取方式。对于array输出的mat文件,推荐使用。原创 2024-06-30 19:57:57 · 639 阅读 · 0 评论 -
cdo | 常用命令
整理一下平时经常会使用的cdo命令。原创 2024-05-31 23:03:30 · 931 阅读 · 0 评论 -
CMIP6降水单位转换
CMIP6 降水单位转换原创 2024-04-30 11:39:12 · 954 阅读 · 2 评论 -
cdo 修改 calendar 为标准的格式
cdo 修改 calendar 为标准格式原创 2024-04-24 10:45:11 · 342 阅读 · 0 评论 -
cdo + shell 批量插值nc文件
近期,开始处理CMIP6模式数据,由于不同的模式数据的分辨率之间各不相同,为了方面后续分析,这里对于数据进行插值处理。原创 2024-04-23 16:54:41 · 617 阅读 · 0 评论 -
Python | 月平均气候态 | SST
Python | 月平均气候态 | SST原创 2024-04-12 16:29:14 · 633 阅读 · 2 评论 -
GPM降水数据下载-Linux系统上使用wget
如何下载GPM降水数据原创 2023-12-16 18:33:10 · 540 阅读 · 0 评论 -
python -- 替换netcdf文件中的时间
以上,通过shell脚本与python脚本的结合,初步实现了缺失时刻的nc数据的填充。对于海表面温度(SST)、海面风速等海洋要素特征来说,短时间内变化不那么剧烈,可以采用上述方法;当然,这里展示的只是通过复制前一时刻的数据,也可以通过插值的方法,这就需要额外编写相关的python脚本,然后加到对应的。原创 2023-09-21 10:01:01 · 288 阅读 · 0 评论 -
python - 快速搜索指定格式文件的方法
python - 快速搜索指定格式文件的方法,使用pathlib库进行实现原创 2023-09-19 17:06:35 · 498 阅读 · 0 评论 -
python -- 实现路径的匹配,剔除掉指定路径,并保存路径
【代码】python -- 实现路径的匹配,剔除掉指定路径,并保存路径。原创 2023-09-01 11:23:57 · 337 阅读 · 0 评论 -
关于多grib文件合并以及netcdf和grib的方法
介绍一些好用的工具处理netcdf和grib原创 2023-07-04 21:52:40 · 1625 阅读 · 0 评论 -
python&深度学习 -- 训练的数据集中出现NaN值应该怎么办?Filling gaps in a numpy array
但是,如果训练集中存在 NaN 值,则计算梯度时出现除以 0 的情况,从而导致梯度无法计算。因此,在深度学习中,通常会在训练集中删除所有包含 NaN 值的样本,或者使用插值或其他技术来填充 NaN 值,以确保数据集不包含 NaN 值。函数来计算每个 NaN 值到离它最近的非 NaN 值的距离,并将其替换为该非 NaN 值。模型无法收敛:如果训练集中存在 NaN 值,则可能会干扰损失函数的计算过程,从而影响模型参数的更新,使模型无法收敛。基于上述问题,这里介绍一个处理Nan值的简单方法,实现NaN值的填充。原创 2023-05-11 20:35:26 · 1535 阅读 · 1 评论 -
python--读取TRMM-3B43月平均降水绘制气候态空间分布图(陆地区域做掩膜)
python--读取TRMM-3B43月平均降水绘制气候态空间分布图(陆地区域做掩膜)原创 2023-05-05 13:30:47 · 2008 阅读 · 0 评论 -
python -- 检验GPM数据是否缺失
python -- 检验GPM数据是否缺失原创 2023-04-28 10:33:13 · 863 阅读 · 0 评论 -
windows & Linux :python 脚本 下载日本葵花8号卫星数据L1级产品,自定义分辨率、时间
近期需要用到日本葵花8号卫星数据,用于相关研究,而通过官方提供的下载方法,难以针对性的下载所需要的数据类型,因此这里编写了一个针对葵花8号卫星L1级数据产品的脚本下载,主要实现两个功能:1、自定义时间下载2、选择任意的分辨率下载nn=08代表葵花8号,nn=09表示葵花9号年月日小时分钟Rbb = R21,表示的是整个区域,波段从 “01” 到 “16”;Rbb=R14,表示的是日本区域,波段为14。原创 2023-04-13 11:04:17 · 1889 阅读 · 0 评论 -
python -- 批量读取多个文件,并将每个文件中相同变量累加
python -- 批量读取多个文件,并将每个文件中相同变量累加原创 2023-03-13 19:35:17 · 3037 阅读 · 4 评论 -
python--海温、OLR数据分布做显著性检验,绘制空间分布并打点
【图+代码】python--海温、OLR数据分布做显著性检验,绘制空间分布并打点。原创 2022-10-22 23:02:42 · 5193 阅读 · 5 评论 -
python--使用convolve 对二维数据进行平滑
python--使用convolve 对二维数据进行平滑。原创 2022-10-13 17:38:52 · 4561 阅读 · 4 评论 -
python--测试使用不同的方式计算位涡平流项的差异
python-计算位涡平流项原创 2022-10-13 17:22:46 · 677 阅读 · 0 评论 -
linux下使用.csh脚本自动化下载GFS气象预报数据
linux下使用.csh脚本自动化下载GFS气象数据。原创 2022-10-13 17:08:12 · 2975 阅读 · 0 评论 -
python--对站点数据做EOF并做插值绘制填色图
使用python对站点数据进行EOF处理,并使用两种插值方法到规则网格上。原创 2022-09-23 21:53:19 · 3100 阅读 · 5 评论 -
python读取excel数据、转换度分为度,绘制填色图
【代码】python读取excel数据、转换度分为度,绘制填色图。原创 2022-09-19 15:38:58 · 739 阅读 · 0 评论 -
python--计算纬度/经度格式的网格点之间的实际距离
一般在处理海洋、气象数据时,往往会通过一些收支方程来对某一气象要素进行诊断分析,而大部分的诊断方程往往都会包含对于变量的偏导。原创 2022-09-13 23:08:55 · 1348 阅读 · 1 评论 -
python--循环绘制ERA5风场的空间分布图
通常,在处理气象海洋资料时,经常会绘制风场的空间分布图进行简单分析,而常常需要连续绘制多天,并将多张子图绘制到同一个图片中,因此这就需要用到循环绘图。原创 2022-09-02 23:14:57 · 4701 阅读 · 1 评论 -
python -- 计算有效波高、平均波高
现有波面数据如下图所示,采用频率为20Hz,需要根据波面数据计算得到平均波高、有效波高等信息。原创 2022-09-02 23:02:31 · 2592 阅读 · 0 评论 -
python--转换wrf输出的风场数据为网页可视化的json格式
一般网页可视化风场中的数据都是json格式,而如果我们希望将wrf模式模拟输出的风场数据在网页中进行展示,这就需要先将wrfoutput数据转换为网页可以识别的json格式。原创 2022-09-01 11:05:08 · 1467 阅读 · 0 评论 -
Neither Quantity object nor its magnitude supports indexing
python 使用metpy给变量赋单位时,出现报错Error: Neither Quantity object nor its magnitude supports indexing原创 2022-08-16 18:52:50 · 465 阅读 · 0 评论 -
python--实现Lorenz 63模式
python 实现洛伦兹模式原创 2022-08-09 23:18:32 · 1667 阅读 · 0 评论 -
python--由wrfouput的数据计算位势涡度,并插值到指定压力层
通过python,计算wrf模式输出数据中的位涡原创 2022-07-26 21:14:02 · 2334 阅读 · 1 评论 -
python:将二维array of float32类型的数据转为float类型
通过python将二维array of float32类型的数据转为float类型原创 2022-07-15 13:07:05 · 2217 阅读 · 0 评论 -
ERA5-hourly-total precipitation的单位换算问题:m转为mm
Conversion table for accumulated variables (total precipitation/fluxes)原创 2022-07-08 14:31:26 · 4487 阅读 · 8 评论 -
python绘图--由逐日风场数据计算月平均风场数据并绘制二维填色图
利用python处理风场数据,将逐日每天四次的日资料处理为月平均数据,并绘制空间填色图。原创 2022-06-08 11:26:11 · 2511 阅读 · 1 评论 -
python 将垂直速度从压力坐标系转为高度坐标系(pa/s转为m/s)
前言最近在计算一下涡度的垂直项时,发现一个问题,如果使用笛卡尔坐标系下的涡度计算公式,会发现对于我们从ERA5下载的垂向速度ω,它的单位是:pa/s,而对于水平的速度u、v来说,它们的单位是:m/s,这在计算速度的旋度时就会出现问题,由于单位不一致引起计算无法进行,对于后续数据处理造成干扰。本来我在网上搜寻解决方案时,发现大部分的解答都只提供了解决思路(由公式转换),往往比较冗杂,不够简单。所辛,我在metpy这个工具包中发现了包装好的函数,只需要提供相应的数据,即可成功转换!这里展示由压力坐标向高度原创 2022-05-13 21:10:27 · 4695 阅读 · 8 评论 -
python 基于metpy计算位涡平流项(水平)
python 计算位涡的平流项原创 2022-05-13 20:49:25 · 3245 阅读 · 5 评论