用R语言分配纬度和经度

时间:2017-10-26 07:19:30

标签: r

我有一个带Lat Lon的NetCDF文件,索引号从0到1200.

当我打印头(lat)时,它会显示索引编号 [,1] [,2] [,3] [,4] [,5] ......到[,1200]
与头(lon)相同

我需要将这些索引号分配到lat lon坐标。

因为我需要提取网格数据(方形网格框),所以根据索引号,我无法确定哪个索引号属于lat lon坐标。

然后我需要做那个网格框的意思。这样我每次都可以获得平均值。

在文件摘要中,只包含2个时间步骤,但在我的原始文件中,时间步长为365.所以我需要在每个时间步进行avg值。 该文件的摘要如下:

File Desktop / test / MAIACTAOT_TIME / maiactaotE.h00v03.20003660525-20003660700.nc(NC_FORMAT_CLASSIC):

 3 variables (excluding dimension variables):
    double GridLat_grid1km[XDim_grid1km,YDim_grid1km]   
        projection: Albers Conical Equal_Area
        corners: 32.038387901543
         corners: 34.9985549202943
         corners: 24.5580030404694
         corners: 21.8673735745303
        long_name: latitude
        units: degrees_north
    double GridLon_grid1km[XDim_grid1km,YDim_grid1km]   
        projection: Albers Conical Equal_Area
        corners: 64.23634233372
         corners: 76.8178669755363
         corners: 79.4747290253718
         corners: 68.077149355049
        long_name: longitude
        units: degrees_east
    short Optical_Depth_055_grid1km[XDim_grid1km,YDim_grid1km,time]   
        coordinates: GridLat_grid1km, GridLon_grid1km
        hdfeos_name: Optical_Depth_055
        projection: Albers Conical Equal_Area
        valid_range: -100
         valid_range: 5000
        _FillValue: -28672
        unit: None
        add_offset: 0
        scale_factor: 0.001
        long_name: AOT at 0.55 micron

 3 dimensions:
    time  Size:2   *** is unlimited ***
        units: hours since 2000-01-01 00:00:00
        calendar: standard
    YDim_grid1km  Size:1200
    XDim_grid1km  Size:1200

5 global attributes:
    creation_date: Tue Oct 17 12:37:58 IST 2017
    Conventions: None
    NCL_version: Any version of NCL >= 5.2.0 (4/2010)
    source_file: MAIACTAOT HDF-EOS files
    title: MAIACTAOT HDF-EOS: time dimension added to selected variables

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您可能正在寻找ncvar_get R Package中的ncdf4函数。 This page对R中的netCDF非常有帮助。

试试这个:

lat <- ncvar_get(your_netcdf, "GridLat_grid1km")
long <- ncvar_get(your_netcdf, "GridLon_grid1km")

希望它有所帮助。