python怎么读取nc文件部分数据

您所在的位置:网站首页 怎么用python提取nc数据 python怎么读取nc文件部分数据

python怎么读取nc文件部分数据

2022-10-19 21:01| 来源: 网络整理| 查看: 265

nc文件的处理方式比较多,可以用MATLAB、JAVA、C、python或者其他的语言。我这两天折腾用python读取nc文件,查阅很多资料,左拼右凑的终于读出来了。

1、安装Anaconda

1)Anaconda的安装这里有详细的讲解。搜索“Anconda”,进入官网下载。我的电脑上安装的是python3.7,因此下载的Anaconda版本是python3.7。

2) 双击下载好的 Anaconda3-5.3.0-Windows-x86_64.exe 文件进行安装。需要注意的是,来到 “Advanced Options 时”,勾选“Register Anaconda as my default python 3.7”,最后点击finish,安装完毕。

3)安装好后,按下Windows徽标键,在所有程序中,找到Anaconda3,点击Anaconda Navigator

,第一次启用会初始化,加载完成后,界面如下所示。主要是用Spyder编写python代码,读取nc文件,因此需要install Spyder。因为我已经安装了Spyder,因此Spyder下面的框是“Lunch”。未安装时,下面的框是“install”,点击install安装就行。

2、安装所需要的模块

1)安装模块之前,更换一下Anaconda镜像。

(1)通过conda config 命令生成配置文件,首先进入cmd命令行,输入:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

(2)在命令行输入:conda config --set show_channel_urls yes

(3)在目录 C:\Users 下就会生成配置文件.condarc,内容如下:

(4)修改上述配置文件,删除上述配置文件 .condarc 中的第三行,然后保存,最终版本文件如下:

(5)查看是否生效,通过命令 conda info 查看当前配置信息,内容如下,即修改成功,关注 channel URLs 字段内容

(6)测试一下,安装爬虫工具包 scrapy,执行命令:conda install scrapy

2)完成以上更改后,可以安装所需模块了。

首先进行一下更新,在Anaconda Prompt(开始菜单栏 Anaconda3文件下)中输入命令:conda update --all;

然后安装读nc文件所需的模块netCDF4:conda install netCDF4

这样就完成了HDF4模块的安装。

python代码

读nc数据代码:

# -*- coding: utf-8 -*-

"""

Spyder Editor

This is a temporary script file.

"""

import netCDF4

from netCDF4 import Dataset

nc_obj=Dataset('e:\\P_CLDAS_RE01_EA16_PRE_HOUR_2015010101.nc')

#查看nc文件有些啥东东

print(nc_obj)

print('---------------------------------------')

#查看nc文件中的变量

print(nc_obj.variables.keys())

for i in nc_obj.variables.keys():

print(i)

print('---------------------------------------')

#查看每个变量的信息

print(nc_obj.variables['LAT'])

print(nc_obj.variables['LON'])

print(nc_obj.variables['PRCP'])

print('---------------------------------------')

#查看每个变量的属性

print(nc_obj.variables['LAT'].ncattrs())

print(nc_obj.variables['LON'].ncattrs())

print(nc_obj.variables['PRCP'].ncattrs())

print(nc_obj.variables['LAT'].units)

print(nc_obj.variables['LON'].units)

print(nc_obj.variables['PRCP']._Fillvalue)

print('---------------------------------------')

#读取数据值

lat=(nc_obj.variables['LAT'][:])

lon=(nc_obj.variables['LON'][:])

prcp=(nc_obj.variables['PRCP'][:])

print(lat)

print(lon)

print('---------------******-------------------')

print(prcp)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3