-- ====================================================================== Alexandre dos Santos Proteção Florestal IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso Campus Cáceres Caixa Postal 244 Avenida dos Ramires, s/n Bairro: Distrito Industrial Cáceres - MT CEP: 78.200-000 Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO) e-mails:alexandresantosbr@yahoo.com.br alexandre.santos@cas.ifmt.edu.br Lattes: http://lattes.cnpq.br/1360403201088680 OrcID: orcid.org/0000-0001-8232-6722 Researchgate: https://www.researchgate.net/profile/Alexandre_Santos10 LinkedIn: https://br.linkedin.com/in/alexandre-dos-santos-87961635 ======================================================================
Senhores, segue o código rodando. O objeto "band" redundante foi alterado pra "ver".
########################################################################
require(raster); require(sp)
# RasterLayer inventador <- raster(nrows=10, ncols=10)r <- setValues(r, 1:ncell(r))plot(r)
band2<- as(r, 'SpatialGridDataFrame') ### transforma em SpatialGridDataFrame
##Função para conversão DN para radiância - LISS III ---------------------------radconvL<-function(x, band = 2){BAND <- c("2", "3", "4", "5")ver <- pmatch(band, BAND)
if (is.na(ver))stop("invalid band")
Lmin = 0Qmax = 127x <- as.vector(as.matrix(x))results <- x
if(band == 2) {Lmax <- 120.64} else if(band == 3) {Lmax <- 151.31} else if(band == 4) {Lmax <- 157.57} else if(band == 5) {Lmax <- 69.03}
x <- Lmin + ((Lmax-Lmin)*x)/Qmaxif (class(results) == "SpatialGridDataFrame")results@data[, 1] <- xelse if (is.data.frame(x))results <- data.frame(matrix(x, nrow = nrow(results),ncol = ncol(results)))else results <- xprint(paste(band, Lmax))print(results)return(results)
}######--
teste2<-radconvL(band2, band = 2)teste2<-radconvL(band2, band = 3)
================================================
Éder ComunelloPhD Student in Agricultural Systems Engineering (USP/Esalq)
Brazilian Agricultural Research Corporation (Embrapa)Dourados, MS, Brazil [22 16.5'S, 54 49.0'W]
Em 3 de fevereiro de 2016 19:48, Éder Comunello <comunello.eder@gmail.com> escreveu:
Senhores, boa noite!
O problema é que você sobrescreve "band" com o resultado de pmatch (1:4). Pode observar que mesmo rodando com band 3:5 o resultado tá errado.
Inclua um print(band) antes do if pra verificar.
================================================
Éder ComunelloPhD Student in Agricultural Systems Engineering (USP/Esalq)
Brazilian Agricultural Research Corporation (Embrapa)Dourados, MS, Brazil [22 16.5'S, 54 49.0'W]
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.