[R-br] Valores aparentemente iguais não são iguais
Marcus Nunes
marcus.nunes em gmail.com
Sexta Julho 15 16:19:38 BRT 2016
Este problema é bastante conhecido no R. Por exemplo, teste o seguinte:
x <- .2
y <- 1-.8
x
y
x == y
sprintf("%.50f", x)
sprintf("%.50f", y)
Veja que, em teoria, esperaríamos que x fosse igual a y, mas isto não
ocorre devido aos erros de ponto flutuante do R. O teu código tem o mesmo
problema.
No teu caso específico, sugiro eliminar os valores que são outliers sem
digitá-los no R. Utilize diretamente o valor calculado pelo programa. Por
exemplo,
set.seed(1507)
index <- 1:1000
SCD <- rnorm(1000)
data <- data.frame(index, SCD)
outliers <- boxplot.stats(data$SCD)$out
outliers.index <- match(data$SCD, outliers)
data <- data[is.na(outliers.index), ]
dim(data)
2016-07-15 15:15 GMT-03:00 Elias Carvalho via R-br <r-br em listas.c3sl.ufpr.br
>:
> Boa Tarde Pessoal
>
> Eu preciso remover outliers do meu banco de dados, então executei o
> seguinte comando:
>
> outlier_values <- boxplot.stats(data$SCD)$out
>
> Resultado foi esse:
>
> > outlier_values
> [1] 20.98965
>
> Porém quando tento remover com o comando abaixo, nada é removido:
>
> data <- data[!(data$SCD)==20.98965,]
>
> Comparando na mão os valores, vejo que a variável em determinada linha tem
> o valor correpondente:
>
> > data$SCD[152]
> [1] 20.98965
>
> No entanto, quando faço a comparação entre os dois valores que
> aparentemente são iguais, o resultado é falso:
>
> > data$SCD[152]==20.98965
> [1] FALSE
>
> Alguém poderia me dar uma ajuda e uma dica de como remover essa linha ?
>
> Obrigado
>
> Elias
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
--
Marcus Nunes
http://marcusnunes.me/
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160715/7031bf75/attachment.html>
Mais detalhes sobre a lista de discussão R-br