如何用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中xrange用法分析
Apr 15 Python
Python判断字符串与大小写转换
Jun 08 Python
在主机商的共享服务器上部署Django站点的方法
Jul 22 Python
详解python开发环境搭建
Dec 16 Python
Python对excel文档的操作方法详解
Dec 10 Python
使用python快速在局域网内搭建http传输文件服务的方法
Nov 14 Python
Pandas-Cookbook 时间戳处理方式
Dec 07 Python
利用PyQt中的QThread类实现多线程
Feb 18 Python
VSCode配合pipenv搞定虚拟环境的实现方法
May 17 Python
Python3使用Selenium获取session和token方法详解
Feb 16 Python
python 多态 协议 鸭子类型详解
Nov 27 Python
分享几种python 变量合并方法
Mar 20 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+AJAX传送中文会导致乱码的问题的解决方法
2008/09/08 PHP
php基础教程 php内置函数实例教程
2012/08/21 PHP
php eval函数用法 PHP中eval()函数小技巧
2012/10/31 PHP
全面解读PHP的人气开发框架Laravel
2015/10/15 PHP
PHP copy函数使用案例代码解析
2020/09/01 PHP
js 页面输出值
2008/11/30 Javascript
解决表单中第一个非隐藏的元素获得焦点的一个方案
2009/10/26 Javascript
JavaScript获取页面上某个元素的代码
2011/03/13 Javascript
JavaScript Memoization 让函数也有记忆功能
2011/10/27 Javascript
javascript自定义函数参数传递为字符串格式
2014/07/29 Javascript
jquery通过ajax加载一段文本内容的方法
2015/01/15 Javascript
jQuery使用addClass()方法给元素添加多个class样式
2015/03/26 Javascript
JS判断图片是否加载完成方法汇总(最新版)
2016/05/13 Javascript
jQuery四种选择器使用及示例
2016/06/05 Javascript
学习Bootstrap滚动监听 附调用方法
2016/07/02 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
jQuery实现手风琴效果(蒙版)
2020/01/11 jQuery
在python里协程使用同步锁Lock的实例
2019/02/19 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
2020/06/04 Python
Python使用tkinter实现小时钟效果
2021/02/22 Python
Mankind西班牙男士护肤品网站:购买皮肤护理、护发和剃须
2017/04/27 全球购物
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
品恩科技软件测试面试题
2014/10/26 面试题
写给女生的道歉信
2014/01/08 职场文书
初中新生军训方案
2014/05/13 职场文书
环保志愿者活动方案
2014/08/14 职场文书
社区党员公开承诺书
2014/08/30 职场文书
党员反对四风问题思想汇报
2014/09/12 职场文书
2014年司机工作总结
2014/11/21 职场文书
2014年街道办事处工作总结
2014/12/11 职场文书
主持人开幕词
2015/01/29 职场文书
五一劳动节慰问信
2015/02/14 职场文书
适合青年人白手起家的创业项目分享
2019/08/16 职场文书
element tree树形组件回显数据问题解决
2022/08/14 Javascript