2013-08-29 25 views
0

我剛剛下載了grib格式的一些氣候數據。我想使用「R」將其轉換爲NetCDF格式。如何使用R將Grib1轉換爲Netcdf?

此外,由於文件由不同的變量組成,我想每次將一個變量提取到單個文件中。

回答

1

如果沒有您的具體文件,很難回答這個問題。您應該考慮製作可重現的examples,尤其是如果您發佈到R板。

對於R,請查看library(raster)library(ncdf4)。我剛剛抓住了我看到的第一個grib1文件,並組成了一個快速示例。

library(raster) 
library(ncdf4) 

download.file(url = 'ftp://ftp.hpc.ncep.noaa.gov/grib/20130815/p06m_2013081500f030.grb', destfile = 'test.grb') 

(r <- raster('test.grb')) 

n <- writeRaster(r, filename = 'netcdf_in_youR_comp.nc', overwrite = TRUE) 
0

我知道你問,使用R解決方案,但它是更直接的命令行使用CDO執行此任務:

cdo -f nc copy test.grb test.nc 

這就是所有你需要做的。如果你想要netcdf4約定,使用「-f nc4」。

要提取的變量,你首先看到的變量名使用的是什麼

ncdump -h test.nc 

然後,一旦你知道你要解壓到一個單獨的文件中的變量的名稱,你可以使用

cdo selvar,varname test.nc var.nc