Programa R para Biologia da Conservação
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Erro com células dados (NA)

5 participantes

Ir para baixo

Erro com células dados (NA) Empty Erro com células dados (NA)

Mensagem por Carolina Lorieri Sáb Abr 25, 2020 6:22 am

Olá a todos, será que alguém mais experiente pode me ajudar?

Acredito que esse problema não seja tão difícil de resolver.

Estou trabalhando com minha tabela de dados de coleta de amostra, porém tenho pontos que não houveram coleta, então coloquei a sigla NA na célula.

Quando começo a inserir funções como valores máximos e valores mínimos o R esta me monstrando sempre o valor NA, como eu peço gentilmente para ele desconsiderar essas células?

Obrigada pessoal....
Carolina Lorieri
Carolina Lorieri

Mensagens : 35
Data de inscrição : 01/04/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Vicente Neto Sáb Abr 25, 2020 10:53 am

Se tu substituir por número zero pode ser que der certo, pois como tu digitou NA ele vai reconhecer como uma variável categórica e não numérica.


Vicente Neto

Mensagens : 3
Data de inscrição : 31/03/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Prof. Marcos Dom Abr 26, 2020 8:05 am

Oi, Carolina!

Em algumas funções é necessário informar ao R de forma explícita que ele precisa ignorar os NAs. Quando isso acontece, normalmente usamos o argumento na.rm=T. Veja o exemplo:

Código:
#Criando dados de exemplo:
exemplo<-structure(list(UA = 1:9, Var1 = c(10L, 15L, 0L, NA, 13L, 11L,
9L, NA, 12L), Var2 = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L,
3L, 3L), .Label = c("a", "b", "c"), class = "factor")), class = "data.frame", row.names = c(NA,
-9L))

#Os dados:
exemplo

#Sumário:
summary(exemplo)

#Máximos e mínimos:
max(exemplo$Var1, na.rm=T)
min(exemplo$Var1, na.rm=T)
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Prof. Marcos Dom Abr 26, 2020 8:08 am

Vicente Neto escreveu:Se tu substituir por número zero pode ser que der certo, pois como tu digitou NA ele vai reconhecer como uma variável categórica e não numérica.


Oi, Vicente! Na verdade há um pouco de confusão aqui, e é bom lembrar: nunca, jamais, substitua um NA por zero!
NA é informação ausente ou perdida. Já um zero é um valor. Se você tem um zero em uma planilha, pressupomos que você sabe que aquele valor é zero. Se tem um NA, a informação é que você não conhece aquele valor. Confundir os dois pode gerar erros de análise, ok?

Ah sim, e uma informação importante: o uso de NA não afeta a capacidade do R ler uma variável como quantitativa, então ele pode ser usado com qualquer tipo de variável. O inconveniente é que de vez em quando temos que fazer como eu mostrei acima, usar na.rm como argumento.
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Carolina Lorieri Dom Abr 26, 2020 5:40 pm

Prof. Marcos escreveu:Oi, Carolina!

Em algumas funções é necessário informar ao R de forma explícita que ele precisa ignorar os NAs. Quando isso acontece, normalmente usamos o argumento na.rm=T. Veja o exemplo:

Código:
#Criando dados de exemplo:
exemplo<-structure(list(UA = 1:9, Var1 = c(10L, 15L, 0L, NA, 13L, 11L,
9L, NA, 12L), Var2 = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L,
3L, 3L), .Label = c("a", "b", "c"), class = "factor")), class = "data.frame", row.names = c(NA,
-9L))

#Os dados:
exemplo

#Sumário:
summary(exemplo)

#Máximos e mínimos:
max(exemplo$Var1, na.rm=T)
min(exemplo$Var1, na.rm=T)

Consegui usar para valores máximos professor, obrigada!!

Mas não consegui usar para os mínimos, o resultado foi 0 e não tenho concentrações/valores nessa quantidade. O que pode ter acontecido? Preciso falar para o R de alguma maneira que zero é "falso", e não considerar?? Question

Além disso como eu uso esse código para a função tapply? Por exemplo: tapply(dados$concentracao, dados$individuo, nmax)

Abraços
Carolina Lorieri
Carolina Lorieri

Mensagens : 35
Data de inscrição : 01/04/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Yasmin Canalli Ter Abr 28, 2020 10:37 am

Olá, bom dia!
Eu também tenho NAs na minha tabela. O que fiz foi usar o pacote Mice para estimar os dados ausentes. Tem o pacote Amelia que também estima dados ausentes (achei o mice mais fácil). Só não consegui fazer o script rodar da estimativa direto para a análise. Então eu salvo os dados estimados em uma nova tabela e abro ela no R para fazer as análises em si.

Yasmin Canalli

Mensagens : 15
Data de inscrição : 30/03/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Carolina Lorieri Qua Abr 29, 2020 6:05 pm

Yasmin Canalli escreveu:Olá, bom dia!
Eu também tenho NAs na minha tabela. O que fiz foi usar o pacote Mice para estimar os dados ausentes. Tem o pacote Amelia que também estima dados ausentes (achei o mice mais fácil). Só não consegui fazer o script rodar da estimativa direto para a análise. Então eu salvo os dados estimados em uma nova tabela e abro ela no R para fazer as análises em si.

Obrigada Yasmin, vou testar esse pacote Mice e ver o que acontece Smile
Carolina Lorieri
Carolina Lorieri

Mensagens : 35
Data de inscrição : 01/04/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Prof. Marcos Seg maio 11, 2020 1:59 pm

Oi, Carolina!

Fiquei curioso com o que pode estar acontecendo com os seus valores mínimos, pois não deveria ser assim. Como os valores máximos e mínimos aparecem quando você executa um summary()? Porque nele eu sei que os NAs não são usados (eles aparecem como uma contagem na parte de baixo do summary). Dê uma conferida, e qualquer coisa poste o resultado do summary aqui, ok?

Vou conferir como seria dentro de um tapply, e depois volto aqui para dizer.
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Prof. Marcos Seg maio 11, 2020 2:02 pm

No tapply não tem mistério, pode adicionar o argumento na.rm normalmente! Smile Veja (com o mesmo exemplo):

Código:
tapply(exemplo$Var1, exemplo$Var2, max, na.rm=T)
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Carolina Lorieri Qui maio 14, 2020 5:28 am

Olá Professor,

CONSEGUIIII,

Eu tinha usado tapply para tentar visualizar o quais os valores minimos e máximos de cada variável, porém não tinha colocado na.rm=T , então não tinha ajudado em nada.

Agora consegui verificar que tinha erro na minha planilha de dados.

Obrigadaaaa, agora segue o barco, vou continuar mexendo nos meus dados do mestrado e provavelmente surgirão outras duvidas.....kkkk

Abraços e bom restinho de semana. cheers
Carolina Lorieri
Carolina Lorieri

Mensagens : 35
Data de inscrição : 01/04/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Renato Filogonio Sáb Jun 06, 2020 9:31 pm

Olá pessoal,

Vou aproveitar o tópico para fazer a minha pergunta quanto a erro de leitura de valores "NA".

Eu estou fazendo uso da função nls() para modelos de regressão não linear, e nos meus dados existem alguns dados com valores faltantes "NA". Quando eu faço o modelo, a função não roda pelo fato de as colunas das variáveis não terem tamanhos iguais. Pelo o que parece, o R assume que a coluna está vazia, e não, digamos, "preenchida" por um "NA". Eu resolvi o problema eliminando essas linhas de dados faltantes e o modelo rodou corretamente (eu comparei os valores dos coeficientes com os calculados em outros programas e bateu certinho). Acontece que, como tenho muitas variáveis que quero testar, tenho que repetir o processo com frequência. Tentei usar o argumento na.rm=T mas a função nls() não possui esse argumento, pelo o que entendi. Existe algum outro argumento que eu possa utilizar para facilitar minha vida (eu vou utilizar bastante essa função daqui para frente...). Também não consegui entender direito como funciona na.action() ou na.omit(). Alguém teria uma luz?

Abraços!

Renato Filogonio

Mensagens : 9
Data de inscrição : 12/04/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Prof. Marcos Seg Jun 08, 2020 9:51 am

Renato, uma saída "bruta" é remover todas as linhas que possuem NA, em qualquer variável medida. Isso pode ser feito com na.omit, veja o exemplo aqui:

Código:
 #Dados de exemplo:
 data("airquality")
 
 #Veja que existem NAs:
 summary(airquality)
 
 #Os dados tem 153 linhas:
 dim(airquality)
 
 #Podemos remover as linhas que tem NA em qualquer das medidas:
 air.2<-na.omit(airquality)
 
 #Agora veja que não há mais NAs:
 summary(air.2)

 #E que pra isso acontecer, várias linhas foram removidas:
 dim(air.2)
 

Mas pode ser que esta saída seja ruim: se você for construir vários modelos, cada um com apenas duas ou poucas variáveis, você pode perder dados caso existam NAs em variáveis que não entram nestes modelos...

Então uma saída alternativa seria você criar várias sub-planilhas, apenas com as variáveis que entram em cada modelo. Você faria isso criando novos data.frames que possuem apenas as colunas desejadas, e nestes você aplica o na.omit(). Faz sentido?
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Renato Filogonio Seg Jun 08, 2020 7:46 pm

Olá Marcos, faz sentido e funciona :-)

O problema é esse que você mesmo comentou, essa correção terá que ser feita caso a caso. De qualquer forma, já é mais fácil do que minha versão manual, onde eu estava criando as tabelas como "tabela_nova <- tabela_original[-a, ]". Então, já facilitou bastante o processo de eu ter que contar quais são as linhas faltantes!
Abraços

Renato Filogonio

Mensagens : 9
Data de inscrição : 12/04/2020

Ir para o topo Ir para baixo

Erro com células dados (NA) Empty Re: Erro com células dados (NA)

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos