气象专业文件nc的读取、裁剪与输出(python)

气象专业文件nc的读取、裁剪与输出

如今的大数据时代,很多气象数据都是nc格式的,尤其外网的大尺度数据,怎么进行nc文件的处理呢?当然arcgis也可以,不过我推荐python中的xarray包。xarray包相当灵活便捷,我写了一段nc文件读取、裁剪和输出的函数,供大家参考。

import xarray as xr
import matplotlib
def read_clip_output_ncdata(input_data_path,output_data_path,min_x,min_y,max_x,max_y,variable_name,min_time=0,max_time=0):
    '''
    input_data_path:str,输入文件的路径
    output_data_path:str,输出文件的路径
    min_x,min_y,max_x,max_y:float,需要裁减区域的经纬度坐标
    variable_name:str,数据的变量名
    min_time、max_time:str,需要提取的时间,格式为"1970-01-01"
    '''
    
    # read data
    data = xr.open_dataset(input_data_path) 
    
    if max_time == 0:
        # clip data
        data_clip = data[variable_name].loc[:,min_x:max_x,min_y:max_y]
    else:
        data_clip = data[variable_name].loc[min_time:max_time,min_x:max_x,min_y:max_y]
     # ouput data
    data_clip.to_netcdf(output_data_path)
    return data_clip

read_clip_output_ncdata(r'F:\气象\解压数据\lrad.nc',r'F:\气象\解压数据\lrad_new1.nc',41.17,116.34,45.341,124.04,"lrad")

你可能感兴趣的:(科研,python,python,开发语言,气象)