Python实现将数据写入netCDF4中的方法示例

yipeiwu_com6年前Python基础

本文实例讲述了Python实现将数据写入netCDF4中的方法。分享给大家供大家参考,具体如下:

nc文件为处理气象数据文件。用户可以去https://www.lfd.uci.edu/~gohlke/pythonlibs/ 搜索netCDF4,下载相应平台的whl文件,使用pip安装即可。

这里演示的写入数据操作代码如下:

# -*- coding:utf-8 -*-
import numpy as np
'''
输入的data的shape=(627,652)
'''
def write_to_nc_canque(data,file_name_path):
 import netCDF4 as nc
 lonS=np.linspace(119.885,120.536,652)
 latS=np.linspace(29.984,29.358,627)
 da=nc.Dataset(file_name_path,'w',format='NETCDF4')
 da.createDimension('lons',652) #创建坐标点
 da.createDimension('lats',627) #创建坐标点
 da.createVariable("lon",'f',("lons")) #添加coordinates 'f'为数据类型,不可或缺
 da.createVariable("lat",'f',("lats")) #添加coordinates 'f'为数据类型,不可或缺
 da.variables['lat'][:]=latS  #填充数据
 da.variables['lon'][:]=lonS  #填充数据
 da.createVariable('u','f8',('lats','lons')) #创建变量,shape=(627,652) 'f'为数据类型,不可或缺
 da.variables['u'][:]=data  #填充数据
 da.close()
write_to_nc_canque(one,'D://new.nc')
'''
输入的data的shape=(627,652)
'''
def write_to_nc_wanmei(data,file_name_path):
 import netCDF4 as nc
 lonS=np.linspace(119.885,120.536,652)
 latS=np.linspace(29.984,29.358,627)
 da=nc.Dataset(file_name_path,'w',format='NETCDF4')
 da.createDimension('lon',652) #创建坐标点
 da.createDimension('lat',627) #创建坐标点
 da.createVariable("lon",'f',("lon")) #添加coordinates 'f'为数据类型,不可或缺
 da.createVariable("lat",'f',("lat")) #添加coordinates 'f'为数据类型,不可或缺
 da.variables['lat'][:]=latS  #填充数据
 da.variables['lon'][:]=lonS  #填充数据
 da.createVariable('u','f8',('lat','lon')) #创建变量,shape=(627,652) 'f'为数据类型,不可或缺
 da.variables['u'][:]=data  #填充数据 
 da.close()
write_to_nc_wanmei(one,'D://new1.nc')

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

使用Python制作缩放自如的圣诞老人(圣诞树)

使用Python制作缩放自如的圣诞老人(圣诞树)

圣诞节又要到了,虽说我们中国人不提倡过西方的节日,但是商家们还是很喜欢的,估计有对象的男孩纸女孩纸们也很喜欢吧。 今天的主题是为大家展示如何用python做一个不断变大的圣诞老人,就像...

Python3使用TCP编写一个简易的文件下载器功能

Python3使用TCP编写一个简易的文件下载器功能

利用Python3来实现TCP协议,和UDP类似。UDP应用于及时通信,而TCP协议用来传送文件、命令等操作,因为这些数据不允许丢失,否则会造成文件错误或命令混乱。下面代码就是模拟客户端...

Sanic框架基于类的视图用法示例

本文实例讲述了Sanic框架基于类的视图用法。分享给大家供大家参考,具体如下: 简介 基于类的视图只是实现对请求响应行为的类,他们提供了一种在同一端点上划分不同HTTP请求类型的处理方式...

Python3中urlencode和urldecode的用法详解

在Python3中,将中文进行urlencode编码使用函数 urllib.parse.quote(string, safe='/', encoding=None, errors=N...

深入浅析python3中的unicode和bytes问题

最近写了一些python3程序,四处能看到bytes类型,而它并不存在于python2中,这也是python3和python2显著区别之一。 以前在写python2代码的时候,经常会遇到...