Regressão linear - Excluindo outliers

Pessoal, bom dia Estou fazendo algumas regressões lineares entre Comprimento x Peso de peixes com um conjunto de dados bastante extenso (+- 1000 linhas). Acontece que alguns destes valores são outliers (+- 50) e na analise, eles não são importantes. Tem alguma função no R que eu consiga "selecionar" os outliers e pedir que não seja considerado na analise? Sem precisa mudar minha planilha original (já que vou utilizar para outras coisas futuramente) Tem alguns valores que estão no meio dos planilhas de dados. Eu consegui resolver os extremos selecionado um conjunto de linhas Exemplo: Local.F.1<-lm(pt[4:970,7]~ls[4:970,6]) ## Com este comando eu retire os outliers dos extremos (linhas 1 a 3 e linhas 971 a 1000), mais ainda tem alguns valores no meio do analise (+- entre as linhas 251 a 260) De já, eu agradeço a ajuda David

David, Depende de como você identifica os outliers. Coloquei um exemplo usando a distancia de Cook, mas da para generalizar com outros critérios # gera dados e forca outlier x <- 1:20 y <- 2*x + 5 + rnorm(20) dados <- data.frame(x,y) dados$y[c(7,11)] <- dados$y[c(7,11)] + 15 # modelo inicial e sem outliers mod <- lm(y~x, dados) outliers <- (cooks.distance(mod) > 0.2) mod2 <- lm(y~x, subset(dados, !outliers)) *Paulo Dick* Estatístico / Epidemiologia em Saúde Pública Tel.: (55 21) 99591-2716 Em 14 de outubro de 2016 11:26, Mac David S. Pinto via R-br < r-br@listas.c3sl.ufpr.br> escreveu:
Pessoal, bom dia
Estou fazendo algumas regressões lineares entre Comprimento x Peso de peixes com um conjunto de dados bastante extenso (+- 1000 linhas).
Acontece que alguns destes valores são outliers (+- 50) e na analise, eles não são importantes.
Tem alguma função no R que eu consiga "selecionar" os outliers e pedir que não seja considerado na analise? Sem precisa mudar minha planilha original (já que vou utilizar para outras coisas futuramente)
Tem alguns valores que estão no meio dos planilhas de dados.
Eu consegui resolver os extremos selecionado um conjunto de linhas
Exemplo:
Local.F.1<-lm(pt[4:970,7]~ls[4:970,6])
## Com este comando eu retire os outliers dos extremos (linhas 1 a 3 e linhas 971 a 1000), mais ainda tem alguns valores no meio do analise (+- entre as linhas 251 a 260)
De já, eu agradeço a ajuda
David
_______________________________________________ R-br mailing list R-br@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.

Além da distância de Cook, você tem mais opções de medidas de influência com a inflence.measures(). Dê uma olhada aqui para ver exemplos http://leg.ufpr.br/~walmes/cursoR/mgest/1medidas-influen.html. Eu gosto de usar o DFits como medida. À disposição. Walmes.

Eu trabalho assim #---------------------Analise de Cook's distance ------------------------------------------- install.packages(sfsmisc); library(sfsmisc) analise<-lm(CONSUMO~factor(GEST)*factor(MANEJO),data=agua) n<-length(agua$CONSUMO) # número de observações n.plot(cooks.distance(analise),seq(1:n),cex=.5,nam=agua$ANIMAL) criterio<-4/analise$df.residual abline(v=criterio) #--------------------------------Eliminacao de outiliers-------------------------------------- ifelse(cooks.distance(analise)>criterio,1,0)->agua$cook analisecook<-lm(CONSUMO~factor(MANEJO)*factor(GEST),data=agua,subset=(cook==0 & GEST!=0 )) #eliminando outliers. ================================== Fernando Souza Zootecnista, DSc. Produção e Alimentação Animal celular: (31)99796-8781 (Vivo) / (31)97358-4685 (Tim) e-mail:nandodesouza@gmail.com Lattes: http://lattes.cnpq.br/6519538815038307 blog: https://producaoanimalcomr.wordpress.com/ ================================= Em Sex, Out 14, 2016 em 3:52 , Walmes Zeviani via R-br <r-br@listas.c3sl.ufpr.br> escreveu:
Além da distância de Cook, você tem mais opções de medidas de influência com a inflence.measures(). Dê uma olhada aqui para ver exemplos http://leg.ufpr.br/~walmes/cursoR/mgest/1medidas-influen.html. Eu gosto de usar o DFits como medida.
À disposição. Walmes.

Antes do estabelecimento de critérios empíricos de corte para os valores da distância de Cook, há esse trabalho sobre sua distribuição exata: https://www.researchgate.net/publication/274062960_Exact_distribution_of_Coo... FCosta Em 14/10/2016 17:03, Fernando Souza via R-br escreveu:
Eu trabalho assim #---------------------Analise de Cook's distance ------------------------------------------- install.packages(sfsmisc); library(sfsmisc) analise<-lm(CONSUMO~factor(GEST)*factor(MANEJO),data=agua) n<-length(agua$CONSUMO) # número de observações n.plot(cooks.distance(analise),seq(1:n),cex=.5,nam=agua$ANIMAL) criterio<-4/analise$df.residual abline(v=criterio) #--------------------------------Eliminacao de outiliers-------------------------------------- ifelse(cooks.distance(analise)>criterio,1,0)->agua$cook analisecook<-lm(CONSUMO~factor(MANEJO)*factor(GEST),data=agua,subset=(cook==0 & GEST!=0 )) #eliminando outliers. ================================== Fernando Souza Zootecnista, DSc. Produção e Alimentação Animal celular: (31)99796-8781 (Vivo) / (31)97358-4685 (Tim) e-mail:nandodesouza@gmail.com Lattes: http://lattes.cnpq.br/6519538815038307 blog: https://producaoanimalcomr.wordpress.com/ =================================
Em Sex, Out 14, 2016 em 3:52 , Walmes Zeviani via R-br <r-br@listas.c3sl.ufpr.br> escreveu:
Além da distância de Cook, você tem mais opções de medidas de influência com a inflence.measures(). Dê uma olhada aqui para ver exemplos http://leg.ufpr.br/~walmes/cursoR/mgest/1medidas-influen.html <http://leg.ufpr.br/%7Ewalmes/cursoR/mgest/1medidas-influen.html>. Eu gosto de usar o DFits como medida.
À disposição. Walmes.
_______________________________________________ R-br mailing list R-br@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.

FCosta, Você viu o posto do Valmes sobre o influence.measures()? 2016-10-14 17:45 GMT-03:00 Felinto COSTA via R-br <r-br@listas.c3sl.ufpr.br> :
Antes do estabelecimento de critérios empíricos de corte para os valores da distância de Cook, há esse trabalho sobre sua distribuição exata:
https://www.researchgate.net/publication/274062960_Exact_ distribution_of_Cook%27s_distance_and_identification_ of_influential_observations
FCosta
Em 14/10/2016 17:03, Fernando Souza via R-br escreveu:
Eu trabalho assim #---------------------Analise de Cook's distance ------------------------------------------- install.packages(sfsmisc); library(sfsmisc) analise<-lm(CONSUMO~factor(GEST)*factor(MANEJO),data=agua) n<-length(agua$CONSUMO) # número de observações n.plot(cooks.distance(analise),seq(1:n),cex=.5,nam=agua$ANIMAL) criterio<-4/analise$df.residual abline(v=criterio) #--------------------------------Eliminacao de outiliers-------------------------------------- ifelse(cooks.distance(analise)>criterio,1,0)->agua$cook analisecook<-lm(CONSUMO~factor(MANEJO)*factor(GEST),data=agua,subset=(cook==0 & GEST!=0 )) #eliminando outliers. ================================== Fernando Souza Zootecnista, DSc. Produção e Alimentação Animal celular: (31)99796-8781 (Vivo) / (31)97358-4685 (Tim) e-mail:nandodesouza@gmail.com Lattes: http://lattes.cnpq.br/6519538815038307 blog: https://producaoanimalcomr.wordpress.com/ =================================
Em Sex, Out 14, 2016 em 3:52 , Walmes Zeviani via R-br <r-br@listas.c3sl.ufpr.br> <r-br@listas.c3sl.ufpr.br> escreveu:
Além da distância de Cook, você tem mais opções de medidas de influência com a inflence.measures(). Dê uma olhada aqui para ver exemplos http://leg.ufpr.br/~walmes/cursoR/mgest/1medidas-influen.html. Eu gosto de usar o DFits como medida.
À disposição. Walmes.
_______________________________________________ R-br mailing listR-br@listas.c3sl.ufpr.brhttps://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.
_______________________________________________ R-br mailing list R-br@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.

oi Pessoa, boa noite Vou tentar filtrar nos outliers pelos técnicas propostos por vocês. Amanha posto aqui os resultados Obrigado pela Ajuda David Em Sexta-feira, 14 de Outubro de 2016 20:29, Cesar Rabak via R-br <r-br@listas.c3sl.ufpr.br> escreveu: FCosta, Você viu o posto do Valmes sobre o influence.measures()? 2016-10-14 17:45 GMT-03:00 Felinto COSTA via R-br <r-br@listas.c3sl.ufpr.br>: Antes do estabelecimento de critérios empíricos de corte para os valores da distância de Cook, há esse trabalho sobre sua distribuição exata: https://www.researchgate.net/ publication/274062960_Exact_ distribution_of_Cook%27s_ distance_and_identification_ of_influential_observations FCosta Em 14/10/2016 17:03, Fernando Souza via R-br escreveu: Eu trabalho assim #---------------------Analise de Cook's distance ------------------------------ ------------- install.packages(sfsmisc); library(sfsmisc) analise<-lm(CONSUMO~factor( GEST)*factor(MANEJO),data= agua) n<-length(agua$CONSUMO) # número de observações n.plot(cooks.distance(analise) ,seq(1:n),cex=.5,nam=agua$ ANIMAL) criterio<-4/analise$df. residual abline(v=criterio) #----------------------------- ---Eliminacao de outiliers--------------------- ----------------- ifelse(cooks.distance(analise) >criterio,1,0)->agua$cook analisecook<-lm(CONSUMO~ factor(MANEJO)*factor(GEST), data=agua,subset=(cook==0 & GEST!=0 )) #eliminando outliers. ============================== ==== Fernando Souza Zootecnista, DSc. Produção e Alimentação Animal celular: (31)99796-8781 (Vivo) / (31)97358-4685 (Tim) e-mail:nandodesouza@gmail.com Lattes: http://lattes.cnpq.br/ 6519538815038307 blog: https:// producaoanimalcomr.wordpress. com/ ============================== === Em Sex, Out 14, 2016 em 3:52 , Walmes Zeviani via R-br <r-br@listas.c3sl.ufpr.br> escreveu: Além da distância de Cook, você tem mais opções de medidas de influência com a inflence.measures(). Dê uma olhada aqui para ver exemplos http://leg.ufpr.br/~walmes/ cursoR/mgest/1medidas-influen. html. Eu gosto de usar o DFits como medida. À disposição. Walmes. ______________________________ _________________ R-br mailing list R-br@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. ______________________________ _________________ R-br mailing list R-br@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. _______________________________________________ R-br mailing list R-br@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� c�igo m�imo reproduz�el.
participantes (6)
-
Cesar Rabak
-
Felinto COSTA
-
Fernando Souza
-
Mac David S. Pinto
-
Paulo Dick
-
Walmes Zeviani