<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Alexandre, bom dia!</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Embora você já tenha resolvido seu problema, lembrei de uma possibilidade de melhoria para o código: o uso de switch() no lugar do bloco if else.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default"><font face="monospace, monospace">### <code r></font></div><div class="gmail_default" style=""><div class="gmail_default"><font face="monospace, monospace">require(raster)</font></div><div class="gmail_default"><font face="monospace, monospace">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">     Lmax <- switch(as.character(band), </font></div><div class="gmail_default"><font face="monospace, monospace">                    "2" = 120.64,</font></div><div class="gmail_default"><font face="monospace, monospace">                    "3" = 151.31,</font></div><div class="gmail_default"><font face="monospace, monospace">                    "4" = 157.57,</font></div><div class="gmail_default"><font face="monospace, monospace">                    "5" = 69.03,</font></div><div class="gmail_default"><font face="monospace, monospace">                    NA)</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>(Lmax)) 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">     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">     results</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">teste2<-radconvL(band2, band = 2)</font></div><div class="gmail_default"><font face="monospace, monospace">teste3<-radconvL(band2, band = 3)</font></div><div class="gmail_default"><font face="monospace, monospace">teste1<-radconvL(band2, band = 1)</font></div><div class="gmail_default"><font face="monospace, monospace">### </code></font></div><div style="font-family:verdana,sans-serif"><br></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></div></div>