[R-br] RES.: Função sigmóide! Dados!

Walmes Zeviani walmeszeviani em gmail.com
Sexta Abril 8 17:35:35 BRT 2011


Thiago,

Segue abaixo um CMR no estilo do que deveria ser (pelo menos para mim) as
trocas de ajuda dentro da lista. Esclarecimentos estão comentados dentro do
código.

#------------------------------------------------------------------------------------------
# exemplo repruzível (exemplo para os demais inscritos da lista)
#------------------------------------------------------------------------------------------
# dados hopesdados pelo site http://www.datafilehost.com/
# link para a página dos dados
http://www.datafilehost.com/download-a7e94384.html
# link do download http://www.datafilehost.com/get.php?file=a7e94384
# o melhor é fazer com que os dados sejam baixados na leitura
# esse procedimento não funcionou para os seus dados. porque?

da <- read.table("http://www.datafilehost.com/get.php?file=688e5891",
header=TRUE) # falha

#------------------------------------------------------------------------------------------
# hospedei os dados no site do LEG, assim eu posso baixar direto da web
# temos que arrumar algo assim para que todos possam usar

da <- read.table("http://www.leg.ufpr.br/~walmes/docs/umi.txt", header=TRUE)
# falha
str(da)

#------------------------------------------------------------------------------------------
# diagnose gráfica

plot(UR~UEQ, da)

#------------------------------------------------------------------------------------------
# pelo jeito, você fixou a UR para obter os valores de UEQ. então não seria
UEQ em função
# de UR? vou continuar a análise para mostrar os procedimentos, mas pense
sobre isso.

#------------------------------------------------------------------------------------------
# modelo logístico não vai se ajustar aos seus dados porque eles não tem
informação
# para ajustar uma curva sigmoide. os dados tem padrão de crescimento
assintótico
# por isso ajustar um modelo que alçance essa comportamento

A <- 100   # mudar até obter bons chutes
B <- 0.11  # mudar até obter bons chutes
plot(UR~UEQ, da)
curve(A*(1-exp(-B*x)), add=TRUE)

#------------------------------------------------------------------------------------------
# ajuste do modelo com os chutes

n0 <- nls(UR~A*(1-exp(-B*UEQ)), data=da,
          start=list(A=100, B=0.11))
summary(n0)

#------------------------------------------------------------------------------------------
# curva ajustada

A <- coef(n0)["A"]
B <- coef(n0)["B"]
plot(UR~UEQ, da)
curve(A*(1-exp(-B*x)), add=TRUE, col=2)

#------------------------------------------------------------------------------------------
# Código mínimo reproduzível: tudo se resolve em questão de segundos!
#------------------------------------------------------------------------------------------

À disposição.
Walmes.

==========================================================================
Walmes Marques Zeviani
LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W)
Departamento de Estatística - Universidade Federal do Paraná
fone: (+55) 41 3361 3573
VoIP: (3361 3600) 1053 1173
e-mail: walmes em ufpr.br
twitter: @walmeszeviani
homepage: http://www.leg.ufpr.br/~walmes
linux user number: 531218
==========================================================================
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20110408/c7622b1f/attachment-0001.html>


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