【发布时间】:2020-05-09 23:22:10
【问题描述】:
我想用 R 显示 NDVI 参数,然后在每个区域中提取此参数的值。
我的文件是从以下链接下载的 NetCDF (.nc) 格式:https://www.ncei.noaa.gov/data/avhrr-land-normalized-difference-vegetation-index/access/1981/
所以我使用以下代码中的两个包“raster”和“ncdf4”在R下将第一个文件导入为“AVHRR-Land_v005_AVH13C1_NOAA-07_19810624_c20170610041337.nc”:
library(ncdf4)
library(raster)
setwd("path/.../data")
r=raster("AVHRR-Land_v005_AVH13C1_NOAA-07_19810624_c20170610041337.nc",varname="NDVI")
但是当应用我的程序时,我得到了这个错误:
Error in CRS(as.character(projection(crs))) :
no arguments in initialization list
我从下面的代码中选择我的变量名称(“NDVI”)。我认为问题出在坐标系的格式上!
library(ncdf4)
nc <- nc_open("AVHRR-Land_v005_AVH13C1_NOAA-07_19810624_c20170610041337.nc")
attributes(nc$var)$names
你有解决这个问题的办法吗!
提前谢谢你
我的 R 版本和我的系统电脑:
R version 3.6.2 (2019-12-12)
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
编辑
感谢 Robert Hijmans 的回答(以下回答)。
我更新了包(更新某些包时出现错误消息)
update.packages(ask=F)
Warning: package 'BH' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'callr' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'cli' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'DT' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'fansi' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'farver' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'gh' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'mime' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'pillar' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'plyr' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'prettyunits' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'stringi' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'vctrs' in library '/usr/local/lib/R/site-library' will not be updated
Warning: package 'foreign' in library '/usr/lib/R/library' will not be updated
并应用了您的代码,但我仍然遇到同样的错误。
r <- raster(f, varname="NDVI")
Error in CRS(as.character(projection(crs))) :
no arguments in initialization list.
traceback()
No traceback available .
sessionInfo()
R version 3.6.2 (2019-12-12)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.3 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
locale:
[1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C LC_TIME=en_GB.UTF-8
[4] LC_COLLATE=en_GB.UTF-8 LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=en_GB.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] ncdf4_1.17 raster_3.0-7 sp_1.3-2
loaded via a namespace (and not attached):
[1] compiler_3.6.2 rgdal_1.4-8 tools_3.6.2 yaml_2.2.0 Rcpp_1.0.3 codetools_0.2-16
[7] grid_3.6.2 lattice_0.20-38
【问题讨论】:
标签: r raster satellite-image ncdf4