使用R中的循环将NA值分配给栅格时出错:尝试从没有插槽的基本类对象(“字符”)中获取插槽“文件”

时间:2019-10-29 16:08:06

标签: r loops raster

我正在尝试使用循环将数字“ -10,000”作为NA值分配给从国家气象局下载的多个单独的多波段栅格文件。我可以单独使用对象,但是尝试使用循环时会收到错误消息。

您可以在下面看到命名约定,但是每个栅格都有三个波段,并对应一个时间段(1天,过去30天等)。

library(raster)

# Reclassify -10,000 values (missing data) to NA for each of the three bands for the "1day" raster file

NAvalue(NWS1_1day) <- -10000
NAvalue(NWS2_1day) <- -10000
NAvalue(NWS3_1day) <- -10000

# Returns no error

namelist <- c('1day', 'last30days', 'last60days', 'last90days', 'last120days', 'last180days', 'last365days')

# Reclassify -10.000 values (missing data) to NA
for (j in 1:length(namelist)) {
  for (k in 1:3) {
   assign(-10000, NAvalue(paste0("NWS", k, "_", namelist[j])))
  }
}

# Error in NAvalue(paste0("NWS", k, "_", namelist[j])) : 
#  trying to get slot "file" from an object of a basic class ("character") with no slots

有什么想法吗?

0 个答案:

没有答案