python 读取netcdf4文件的全过程(基础教程,看了包会)

简介: 拿到一个nc文件,如何使用python进行读取呢?本文带你完整走一遍流程。

拿到一个nc文件,如何使用python进行读取呢?本文带你完整走一遍流程。

前期准备:


下面开始正式数据读取,第一步,打开基于你的python环境建立下的spyder编辑器(或者其他的编辑软件vscode、pycharm,本文以spyder为例,安装好anaconda后自然就有,默认为anaconda环境,我用的是自己配置的虚拟环境:py37)。


苹果系统下在命令行里之间conda install spyder,安装好spyder后输入:spyder就能启动了


25de0a20317140a59ad7287c71e76776.png

670e49addd704f6ea3c567808bb684c7.png


打开后进入如下的页面:一个待编辑的脚本,1号是输入代码的地方,2号是查看变量的地方,3号是可以进行一些命令输入的地方(如查看数据包含的变量内容等)。Windows系统下先ctrl+s保存脚本文件,并且重命名放在一个自己记得住位置的路径下,我这里选择放在桌面。


737c4749806644b2a0258215c665350a.png

6355773871c84bbab1decd3dbb1718a1.png


这样,一个python读取nc文件的脚本就建好了,下面就是正式擦刀处理的过程了。


步骤1:导入相关的库



通过import命令导入相关的库,各个库都在之前进行了安装,有的是软件自带的。各个库的简单作用如下:


# 读取nc文件
import xarray as xr
# 地图
import cartopy.crs as ccrs
# 进行数组计算
import numpy as np
# 进行绘图时使用
import matplotlib.pyplot as plt


步骤2:通过xarray 库进行读取nc文件



找到nc文件所在的路径,通过xarray 库进行读取

如图所示,我的nc文件放在桌面上,找到他,右击属性,打开后找到位置,选择复制下来:


3e0e7a9ed1ae4894a1cfb1f3a8f5cebc.png


ac558b04ba514475b7cd8b2e9fdb99a9.png


在代码编辑那一栏中,将刚刚复制的文件路径加上完整的文件名,赋给一个变量名为:path


path = r'D:\desktopppp\data.nc'


下面就可以通过xarray这个库进行读取了,同样赋给一个变量名为:data,代码如下:


path = r'D:\desktopppp\data.nc'
data=xr.open_dataset(path)


点击这里的三角形,运行代码:


fb193246eb8c4eaaae7f30105a308bc6.png


运行后,在右边的变量查看的地方发现就读取完成了:

9172d6e29a624f36a6b72d23a5802e66.png

这时,我们不清楚我们读取的这个nc文件里究竟有什么数据,所以如何查看nc文件里的变量呢。可以在3号区域中通过命令实现:在3号区域,输入我们刚刚命名的读取的data变量回车后得到我们这个nc文件中所涵盖的变量信息以及一些文件的其他属性:


73f839d8b2c74260981715fce231bb67.png


步骤3:读取文件中的变量



  • 对于nc文件中的变量进行读取
    那么如何读取我们需要的变量呢?比如说:经度、纬度、时间等等
    根据刚刚我们在3号区域中得到的文件信息,我们可以看到,这个文件有一个属性叫做:coordinates,如图所示:


52730dce0982425881f8bf278351284e.png


  • 我们就可以通过这里的coordinates进行读取,代码如下:


# 读取经度
lon=data.lon
# 读取纬度
lat=data.lat
# 读取时间
time=data.time


再次运行代码,就可以发现在右边的2号区域内看到所需要的变量了:


dbc68806f7044f4681a58909a1bd8b6a.png

同样可以在3号区域内,输入:lon、lat、time查看具体的信息:


e0ba2ae9a2f948ec91a10d711e2119cc.png


好了,这里看完你就已经学会nc文件的读取啦,包括查看变量信息等等。下面就是针对读取的变量进行数据处理啦。

同时,关于xarray的介绍可以查看下面的链接:


xarray介绍1:nc文件的读取、索引、切片、插值

xarray介绍2:nc文件的重采样、降维、分类、求平均、线性回归

xarray介绍3:nc文件的基础绘图


                  一个努力学习python的海洋人
                  水平有限,欢迎指正!!!
                  欢迎评论、收藏、点赞、转发、关注。
                  关注我不后悔,记录学习进步的过程~~
相关文章
|
6天前
|
测试技术 PHP 索引
CANopen for Python 使用教程(二)
CANopen for Python 使用教程(二)
20 5
|
5天前
|
前端开发 Python
使用Python+openpyxl实现导出自定义样式的Excel文件
本文介绍了如何使用Python的openpyxl库导出具有自定义样式的Excel文件,包括设置字体、对齐方式、行列宽高、边框和填充等样式,并提供了完整的示例代码和运行效果截图。
8 1
使用Python+openpyxl实现导出自定义样式的Excel文件
|
6天前
|
XML 编解码 数据可视化
MoJoCo 入门教程(六)Python LQR 教程
MoJoCo 入门教程(六)Python LQR 教程
7 2
MoJoCo 入门教程(六)Python LQR 教程
|
3天前
|
XML 程序员 数据格式
豆瓣评分8.6!Python社区出版的Python故事教程,太强了!
Python 是活力四射的语言,是不断发展中的语言。就连使用 Python 多年的行者也不敢说对 Python 的方方面面都了解并可以自由运用,想必读者可能更加无法快速掌握所有重点技巧了。 今天给小伙伴们分享的这份手册是用互动的开发故事来探讨Pyfhonic开发的故事书籍,是一本Python语言详解书籍,由Python的行者根据自身经验组织而成,是为从来没有听说过Python的其他语言程序员准备的一份实用的导学性质的书,笔者试图将优化后的学习体验,通过故事的方式传达给读者。对于零基础的小白来说更建议入门后再来品读。
|
7天前
|
Python
Python——批量将PDF文件转为图片
Python——批量将PDF文件转为图片
16 2
|
7天前
|
调度 数据库 UED
Python使用asyncio包实现异步编程方式
异步编程是一种编程范式,用于处理程序中需要等待异步操作完成后才能继续执行的情况。 异步编程允许程序在执行耗时的操作时不被阻塞,而是在等待操作完成时继续执行其他任务。 这对于处理诸如文件 I/O、网络请求、定时器等需要等待的操作非常有用。
|
7天前
|
Python
Python——将PPT和Word转为PDF文件
Python——将PPT和Word转为PDF文件
22 1
|
5天前
|
Linux iOS开发 MacOS
|
5天前
|
Linux Python
Linux离线安装Python依赖包
本文介绍了在Linux环境下离线安装Python依赖包的方法,包括从Python依赖包检索网站下载所需依赖包的压缩文件,上传到Linux服务器,然后通过解压、编译和安装步骤完成依赖包的安装。
9 0
|
6天前
|
存储 Linux 网络安全
常用的 Python 工具:使用 virtualenv、使用 Pip 进行安装和管理包
常用的 Python 工具:使用 virtualenv、使用 Pip 进行安装和管理包
9 0