[R-br] RES: Digest R-br, volume 55, assunto 25

Franklin Januario da Silva Franklin.Silva em cerradinho.com.br
Quinta Julho 30 12:44:27 BRT 2015


Boa tarde,

Obrigado pela contribuição, apliquei a seguinte solução indicada pelo colega Crysttian Arantes Paixão

"Use is.na(vetor) te retorna True onde for na."

Mas para fins de aprendizado vou testar também vossa solução.

Obrigado.

-----Mensagem original-----
De: R-br [mailto:r-br-bounces em listas.c3sl.ufpr.br] Em nome de r-br-request em listas.c3sl.ufpr.br
Enviada em: quinta-feira, 30 de julho de 2015 12:00
Para: r-br em listas.c3sl.ufpr.br
Assunto: Digest R-br, volume 55, assunto 25

Enviar submissões para a lista de discussão R-br para
        r-br em listas.c3sl.ufpr.br

Para se cadastrar ou descadastrar via WWW, visite o endereço
        https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
ou, via email, envie uma mensagem com a palavra 'help' no assunto ou corpo da mensagem para
        r-br-request em listas.c3sl.ufpr.br

Você poderá entrar em contato com a pessoa que gerencia a lista pelo endereço
        r-br-owner em listas.c3sl.ufpr.br

Quando responder, por favor edite sua linha Assunto assim ela será mais específica que "Re: Contents of R-br digest..."


Tópicos de Hoje:

   1. Dúvida com lógica booleana (Franklin Januario da Silva)
   2. RES:  Dúvida com lógica booleana (Jobenil - Gmail)


----------------------------------------------------------------------

Message: 1
Date: Wed, 29 Jul 2015 17:31:05 +0000
From: Franklin Januario da Silva <Franklin.Silva em cerradinho.com.br>
To: "r-br em listas.c3sl.ufpr.br" <r-br em listas.c3sl.ufpr.br>
Subject: [R-br] Dúvida com lógica booleana
Message-ID:
        <006302C31529284486686A3E9F94CC5E01421D8579 em UCEXCH02.cerradinho.local>
Content-Type: text/plain; charset="iso-8859-1"

Boa tarde Srs.

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:

Tenho o seguinte vetor:

> vetor
   [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
  [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
  [49]   454   555   620   617   559   559   NA   NA   544   560

Se eu fizer sum(vetor) obtenho isso:

> sum(vetor)
[1] NA

Então tentei iterar sobre o vetor substituindo os valores NA por 0:

> for (i in 1:length(vetor)){
+ if (vetor[i]==NA){
+ vetor[i]<-0}}
Error in if (vetor[i] == NA) { : valor ausente onde TRUE/FALSE necessário
>

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:

> vazio
[1] NA
> for (i in 1:length(vetor)){
+ if (vetor[i]==vazio[1]){
+ vetor[i]<-0}}
Error in if (vetor[i] == vazio[1]) { :
  valor ausente onde TRUE/FALSE necessário
>

Algum sugestão?

Grato.

[http://www.cerradinho.com/CBio.png]

        Franklin Januario da Silva
          Agricola

          64 3634-2806
          64 9979-0608
          cerradinho.com.br<http://www.cerradinho.com.br>

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150729/742f535a/attachment-0001.html>

------------------------------

Message: 2
Date: Wed, 29 Jul 2015 14:48:58 -0300
From: "Jobenil - Gmail" <pjobenil em gmail.com>
To: <r-br em listas.c3sl.ufpr.br>
Subject: [R-br] RES:  Dúvida com lógica booleana
Message-ID: <001701d0ca26$da6d0450$8f470cf0$@gmail.com>
Content-Type: text/plain; charset="iso-8859-1"

Tente sum(vetor, na.rm = TRUE)

Veja também help(sum)



De: R-br [mailto:r-br-bounces em listas.c3sl.ufpr.br] Em nome de Franklin Januario da Silva Enviada em: quarta-feira, 29 de julho de 2015 14:31
Para: r-br em listas.c3sl.ufpr.br
Assunto: [R-br] Dúvida com lógica booleana



Boa tarde Srs.



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:



Tenho o seguinte vetor:



> vetor

   [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

  [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

  [49]   454   555   620   617   559   559   NA   NA   544   560



Se eu fizer sum(vetor) obtenho isso:



> sum(vetor)

[1] NA



Então tentei iterar sobre o vetor substituindo os valores NA por 0:



> for (i in 1:length(vetor)){

+ if (vetor[i]==NA){

+ vetor[i]<-0}}

Error in if (vetor[i] == NA) { : valor ausente onde TRUE/FALSE necessário

>



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:



> vazio

[1] NA

> for (i in 1:length(vetor)){

+ if (vetor[i]==vazio[1]){

+ vetor[i]<-0}}

Error in if (vetor[i] == vazio[1]) { :

  valor ausente onde TRUE/FALSE necessário

>



Algum sugestão?



Grato.



  <http://www.cerradinho.com/CBio.png>


        Franklin Januario da Silva
          Agricola

          64 3634-2806
          64 9979-0608

          cerradinho.com.br <http://www.cerradinho.com.br>



---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150729/ce1c3d43/attachment-0001.html>

------------------------------

Subject: Legenda do Digest

_______________________________________________
R-br mailing list
R-br em listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br


------------------------------

Fim da Digest R-br, volume 55, assunto 25
*****************************************

[http://www.cerradinho.com/CBio.png]

        Franklin Januario da Silva
           Agricola

          64 3634-2806
          64 9979-0608
          cerradinho.com.br<http://www.cerradinho.com.br>



Mais detalhes sobre a lista de discussão R-br