<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
<!--
@font-face
        {font-family:Calibri}
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif"}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline}
span.EstiloDeEmail17
        {font-family:"Calibri","sans-serif";
        color:windowtext}
.MsoChpDefault
        {font-family:"Calibri","sans-serif"}
@page WordSection1
        {margin:70.85pt 3.0cm 70.85pt 3.0cm}
div.WordSection1
        {}
-->
</style>
</head>
<body lang="PT-BR" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Boa tarde Srs.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Estou iniciando com a linguagem R e me deparei com uma situação da qual não tenho tido êxito em solucionar, preciso iterar sobre um vetor e onde houver valores NA substituí-los por 0, isso porque ao executar a função getValues da biblioteca
 raster sobre uma linha que contenha em algumas das células o valor NA, e tentar obter o somatório destas, o R me retorna NA, vou tentar ser mais claro:</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Tenho o seguinte vetor:</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span style="color:red">> vetor</span></p>
<p class="MsoNormal"><span style="color:red">   [1]   575   618   558   549   499   487   450   412   382   342   365   254   311   362   312   335   339   267   300   350   527   555   561   545</span></p>
<p class="MsoNormal"><span style="color:red">  [25]   597   580   548   576   624   664   632   NA   539   567   574   611   660   763   658   599   577   543   514   409   364   374   361   354</span></p>
<p class="MsoNormal"><span style="color:red">  [49]   454   555   620   617   559   559   NA   NA   544   560</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Se eu fizer sum(vetor) obtenho isso:</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span style="color:red">> sum(vetor)</span></p>
<p class="MsoNormal"><span style="color:red">[1] NA</span></p>
<p class="MsoNormal"><span style="color:red"> </span></p>
<p class="MsoNormal">Então tentei iterar sobre o vetor substituindo os valores NA por 0:</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">> for (i in 1:length(vetor)){</span></p>
<p class="MsoNormal"><span style="color:red">+ if (vetor[i]==NA){</span></p>
<p class="MsoNormal"><span style="color:red">+ vetor[i]<-0}}</span></p>
<p class="MsoNormal"><span style="color:red">Error in if (vetor[i] == NA) { : valor ausente onde TRUE/FALSE necessário</span></p>
<p class="MsoNormal"><span style="color:red">> </span></p>
<p class="MsoNormal"><span style="color:red"> </span></p>
<p class="MsoNormal">Pensei que talvez fosse necessário criar um objeto com o valor NA para realizar a comparação, criei o “vazio”, mas obtenho o mesmo erro:<span style="color:red"></span></p>
<p class="MsoNormal"><span style="color:red"> </span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">> vazio</span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">[1] NA</span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">> for (i in 1:length(vetor)){</span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">+ if (vetor[i]==vazio[1]){</span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">+ vetor[i]<-0}}</span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">Error in if (vetor[i] == vazio[1]) { :
</span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:red">  </span><span style="color:red">valor ausente onde TRUE/FALSE necessário</span></p>
<p class="MsoNormal"><span style="color:red">> </span></p>
<p class="MsoNormal"><span style="color:red"> </span></p>
<p class="MsoNormal">Algum sugestão?</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Grato.</p>
</div>
<style>
<!--
@font-face
        {font-family:Calibri}
@font-face
        {font-family:Tahoma}
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif"}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif"}
span.TextodebaloChar
        {font-family:"Tahoma","sans-serif"}
.MsoChpDefault
        {font-family:"Calibri","sans-serif"}
.MsoPapDefault
        {margin-bottom:10.0pt;
        line-height:115%}
@page WordSection1
        {margin:70.85pt 3.0cm 70.85pt 3.0cm}
-->
</style><br>
<div class="WordSection1">
<p class="MsoNormal"><b><span style="font-size:10pt; font-family:"Arial","sans-serif"; color:rgb(101,101,101)"><img src="http://www.cerradinho.com/CBio.png" height="77" width="108"></span></b></p>
<p class="MsoNormal"><b><span style="font-size:10pt; font-family:"Arial","sans-serif"; color:rgb(101,101,101)"><br>
        Franklin Januario da Silva<br>
</span></b><span style="font-size:8pt; font-family:"Arial","sans-serif"; color:rgb(101,101,101)">          Agricola<br>
           <br>
          64 3634-2806<br>
          64 9979-0608</span></p>
<p class="MsoNormal"><span style="font-size:8pt; font-family:"Arial","sans-serif"; color:rgb(101,101,101)"><b>          <a href="http://www.cerradinho.com.br">cerradinho.com.br</a>
<br>
<br>
</b></span></p>
</div>
</body>
</html>