<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Senhores, segue o código rodando. O objeto "band" redundante foi alterado pra "ver".</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style=""><div class="gmail_default"><font face="monospace, monospace">########################################################################</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">require(raster); require(sp)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace"># RasterLayer inventado</font></div><div class="gmail_default"><font face="monospace, monospace">r <- raster(nrows=10, ncols=10)</font></div><div class="gmail_default"><font face="monospace, monospace">r <- setValues(r, 1:ncell(r))</font></div><div class="gmail_default"><font face="monospace, monospace">plot(r)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">band2<- as(r, 'SpatialGridDataFrame')  ### transforma em SpatialGridDataFrame</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">##Função para conversão DN para radiância - LISS III ---------------------------</font></div><div class="gmail_default"><font face="monospace, monospace">radconvL<-function(x, band = 2)</font></div><div class="gmail_default"><font face="monospace, monospace">{</font></div><div class="gmail_default"><font face="monospace, monospace">     BAND <- c("2", "3", "4", "5")</font></div><div class="gmail_default"><font face="monospace, monospace">     ver <- pmatch(band, BAND)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">     if (<a href="http://is.na">is.na</a>(ver))</font></div><div class="gmail_default"><font face="monospace, monospace">         stop("invalid band")</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">     Lmin = 0</font></div><div class="gmail_default"><font face="monospace, monospace">     Qmax = 127</font></div><div class="gmail_default"><font face="monospace, monospace">     x <- as.vector(as.matrix(x))</font></div><div class="gmail_default"><font face="monospace, monospace">     results <- x</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">     if(band == 2) {</font></div><div class="gmail_default"><font face="monospace, monospace">     Lmax <- 120.64</font></div><div class="gmail_default"><font face="monospace, monospace">     } else if(band == 3) {</font></div><div class="gmail_default"><font face="monospace, monospace">     Lmax <- 151.31</font></div><div class="gmail_default"><font face="monospace, monospace">     } else if(band == 4) {</font></div><div class="gmail_default"><font face="monospace, monospace">     Lmax <- 157.57</font></div><div class="gmail_default"><font face="monospace, monospace">     } else if(band == 5) {</font></div><div class="gmail_default"><font face="monospace, monospace">     Lmax <- 69.03</font></div><div class="gmail_default"><font face="monospace, monospace">     }</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">     x <- Lmin + ((Lmax-Lmin)*x)/Qmax</font></div><div class="gmail_default"><font face="monospace, monospace">     if (class(results) == "SpatialGridDataFrame")</font></div><div class="gmail_default"><font face="monospace, monospace">         results@data[, 1] <- x</font></div><div class="gmail_default"><font face="monospace, monospace">     else if (is.data.frame(x))</font></div><div class="gmail_default"><font face="monospace, monospace">         results <- data.frame(matrix(x, nrow = nrow(results),</font></div><div class="gmail_default"><font face="monospace, monospace">             ncol = ncol(results)))</font></div><div class="gmail_default"><font face="monospace, monospace">     else results <- x</font></div><div class="gmail_default"><font face="monospace, monospace">     print(paste(band, Lmax))</font></div><div class="gmail_default"><font face="monospace, monospace">     print(results)</font></div><div class="gmail_default"><font face="monospace, monospace">     return(results)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">}</font></div><div class="gmail_default"><font face="monospace, monospace">######--</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">teste2<-radconvL(band2, band = 2)</font></div><div class="gmail_default"><font face="monospace, monospace">teste2<-radconvL(band2, band = 3)</font></div><div style="font-family:verdana,sans-serif"><br></div></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font face="arial, helvetica, sans-serif" style="font-size:small"><div style="font-family:'trebuchet ms',sans-serif;display:inline">​</div>================================================<br>Éder Comunello</font><div style="font-size:small"><span style="font-family:arial,helvetica,sans-serif">PhD Student in Agricultural Systems Engineering (USP/Esalq)</span><br></div><div><span style="font-size:small">Brazilian Agricultural Research Corporation (</span><font face="arial, helvetica, sans-serif" style="font-size:small">Embrapa)</font><div style="font-size:small"><font face="arial, helvetica, sans-serif">Dourados, MS, Brazil [</font>22 16.5'S, 54 49.0'W<span style="font-family:arial,helvetica,sans-serif">]</span></div><div><div><br></div><div><br></div></div><div style="font-size:small"><br></div></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">Em 3 de fevereiro de 2016 19:48, Éder Comunello <span dir="ltr"><<a href="mailto:comunello.eder@gmail.com" target="_blank">comunello.eder@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Senhores, boa noite!</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">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.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Inclua um print(band) antes do if pra verificar. </div><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font face="arial, helvetica, sans-serif" style="font-size:small"><div style="font-family:'trebuchet ms',sans-serif;display:inline">​</div>================================================<span class="HOEnZb"><font color="#888888"><br>Éder Comunello</font></span></font><span class="HOEnZb"><font color="#888888"><div style="font-size:small"><span style="font-family:arial,helvetica,sans-serif">PhD Student in Agricultural Systems Engineering (USP/Esalq)</span><br></div><div><span style="font-size:small">Brazilian Agricultural Research Corporation (</span><font face="arial, helvetica, sans-serif" style="font-size:small">Embrapa)</font><div style="font-size:small"><font face="arial, helvetica, sans-serif">Dourados, MS, Brazil [</font>22 16.5'S, 54 49.0'W<span style="font-family:arial,helvetica,sans-serif">]</span></div><div><div><br></div><div><br></div></div></div></font></span></div></div></div></div></div></div></div></div></div>
</blockquote></div><br></div>