如何用Matlab和Python读取Netcdf文件


Posted in Python onFebruary 19, 2021

NetCDF(网络通用数据格式)文件后缀为.nc,文件中的数据结构包含维(dimensions)、变量(variables)和属性(attributes)三种描述类型,每种类型都会被分配一个名字和一个ID。

从数学上来说,netcdf存储的数据就是一个多自变量的单值函数。用公式来说就是f(x,y,z,...)=value,函数的自变量x,y,z等在netcdf中叫做维(dimension)或坐标轴(axis),函数值value在netcdf中叫做变量(Variables)。而自变量和函数值在物理学上的一些性质,比如计量单位(量纲)、物理学名称等等在netcdf中就叫属性(Attributes)。

NetCDF name{
Dimensions:… //定义维数
Variables:… //定义变量
Attributes:… //属性
Data:…//数据
}

读取.nc文件可以用python的netCdf4模块,也可以用ncbrowser,这里我用的是Matlab。

MATLAB具有数值分析、数值和符号计算、工程与科学绘图、控制系统的设计与仿真、数字图像处理、数字信号处理、财务与金融工程等功能。

这是matlab打开之后的基本界面,上方为命令功能区,右侧为命令行输入栏,左上角为当前路径中文件夹详情,左下角为软件工作区。

如何用Matlab和Python读取Netcdf文件

读取nc文件的命令

%% 显示结构 
% ncdisp(ncFilePath);%显示nc文件的所有结构,以便大概了解里面的内容 
% ncdisp(ncFilePath,'evap');%显示指定变量的内容,注意一定要是变量variables才可以 
% ncdisp(ncFilePath,'/','min');%简单显示结构以及定义 
% ncdisp(ncFilePath,'/','full');%全部显示所有结构和定义信息 

如何用Matlab和Python读取Netcdf文件

然后调用ncread读取变量值:

vardata = ncread(source,varname)

vardata = ncread(source,varname,start,count,stride)

(1)start

varname所指定变量的每一维的开始读取的位置

(2)count

从start指定的开始位置算起,一共读取的每一维要素的数目

(3)stride

从start开始,每一维读取的数目为count时,每一维的读取的步长

如何用Matlab和Python读取Netcdf文件

更新:用python读取.nc文件

安装netCDF4库

如何用Matlab和Python读取Netcdf文件

导入nc库,用Dataset函数读取文件信息

如何用Matlab和Python读取Netcdf文件

f.variables.keys()读取所有变量名称

f.variables.items()读取所有变量信息

如何用Matlab和Python读取Netcdf文件

读取单个变量的值

如何用Matlab和Python读取Netcdf文件

以上就是如何用Matlab和Python读取Netcdf文件的详细内容,更多关于Matlab和Python读取Netcdf文件的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python简单实现查找一个字符串中最长不重复子串的方法
Mar 26 Python
python生成ppt的方法
Jun 07 Python
Windows下将Python文件打包成.EXE可执行文件的方法
Aug 03 Python
opencv python 基于KNN的手写体识别的实例
Aug 03 Python
python对日志进行处理的实例代码
Oct 06 Python
python中的tcp示例详解
Dec 09 Python
Python Selenium 之关闭窗口close与quit的方法
Feb 13 Python
Python3+Appium安装使用教程
Jul 05 Python
使用Pycharm(Python工具)新建项目及创建Python文件的教程
Apr 26 Python
python3.8.1+selenium实现登录滑块验证功能
May 22 Python
python获取带有返回值的多线程
May 02 Python
Python开发五子棋小游戏
May 02 Python
python中最小二乘法详细讲解
Feb 19 #Python
python中scipy.stats产生随机数实例讲解
Feb 19 #Python
python的scipy.stats模块中正态分布常用函数总结
Feb 19 #Python
python+opencv实现车道线检测
Feb 19 #Python
python UIAutomator2使用超详细教程
Feb 19 #Python
Python实现曲线拟合的最小二乘法
Feb 19 #Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
Feb 19 #Python
You might like
php checkbox复选框值的获取与checkbox默认值输出方法
2010/05/15 PHP
什么情况下可以不写PHP的闭合标签“?>”
2014/08/28 PHP
php设置页面超时时间解决方法
2015/09/22 PHP
PHP安全下载文件的方法
2016/04/07 PHP
基于thinkPHP类的插入数据库操作功能示例
2017/01/06 PHP
写的htc的数据表格
2007/01/20 Javascript
asp(javascript)全角半角转换代码 dbc2sbc
2009/08/06 Javascript
一些技巧性实用js代码小结
2009/10/14 Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
2012/10/11 Javascript
基于jQuery实现模拟页面加载进度条
2013/04/01 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
2013/05/30 Javascript
页面定时刷新(1秒刷新一次)
2013/11/22 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
JavaScript使用encodeURI()和decodeURI()获取字符串值的方法
2015/08/04 Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
2015/09/14 Javascript
AngularJS 最常用的功能汇总
2016/02/17 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
vue form check 表单验证的实现代码
2018/12/09 Javascript
vue使用swiper实现中间大两边小的轮播图效果
2019/11/24 Javascript
用VsCode编辑TypeScript的实现方法
2020/05/07 Javascript
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
用Python写一段用户登录的程序代码
2018/04/22 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例
2020/03/16 Python
Reebok俄罗斯官方网上商店:购买锐步运动服装和鞋子
2016/09/26 全球购物
JOSEPH官网:英国奢侈时尚品牌
2018/01/31 全球购物
NULL是什么,它是怎么定义的
2015/05/09 面试题
linux面试题参考答案(3)
2012/09/13 面试题
资深财务管理人员自我评价
2013/09/22 职场文书
优秀团队获奖感言
2014/02/19 职场文书
读书活动实施方案
2014/03/10 职场文书
银行委托书范本
2014/04/04 职场文书
优秀管理者事迹材料
2014/05/22 职场文书
SpringCloud Alibaba 基本开发框架搭建过程
2021/06/13 Java/Android
基于Python实现nc批量转tif格式
2022/08/14 Python