NSIDC sea ice .bin文件到raster()

时间:2016-04-09 16:34:50

标签: gis geospatial bin r-raster

我试图按照“极地例子”下的here示例

此示例使用.bin格式的海冰数据绘制为栅格。我正在尝试使用国家冰雪数据中心的original ftp server提供的不同文件。因此,我认为应该没有问题。但是,当我尝试提示R运行以下脚本时

# from NSIDC sea ice concentration file
baseurl <- "ftp://sidads.colorado.edu/pub/DATASETS/"

f2 <- paste(baseurl, 
        "nsidc0051_gsfc_nasateam_seaice/final-gsfc/north/daily/2013/nt_20130111_f17_v1.1_n.bin",
        sep='')

if (!file.exists(basename(f2))) download.file(f2, basename(f2), mode = "wb")
ice2 <- raster(basename(f2))
  

.rasterObjectFromFile中的错误(x,band = band,objecttype =“RasterLayer”,:无法从此文件创建RasterLayer对象。

我哪里错了?是.bin文件已损坏?任何帮助表示赞赏!

谢谢!

1 个答案:

答案 0 :(得分:0)

好的,在github上找到了一个非常好用的解决方案。

https://github.com/cran/raster/blob/master/R/nsidcICE.R

只需替换剧本的第14行

hemi <- tolower(substr(bx, 21L, 21L)) 

通过

hemi <- tolower(substr(bx, 22L, 22L)),

因为新的名称结构与v1.1序列中的原始的一个一个数字略有不同点!

比较

"nt_19781119_f07_v01_s.bin" 

到我感兴趣的版本

"nt_20130111_f17_v1.1_n.bin"