Eu recebi essa tarefa e fiquei perplexo. Um colega me pediu para estimar a e x l o w e r do quadro a seguir:
A curva é na verdade uma distribuição cumulativa ex é algum tipo de medida. Ele está interessado em saber quais são os valores correspondentes em x quando a função cumulativa começou a se tornar reta e se desviar de ser reta.
Entendo que podemos usar a diferenciação para encontrar a inclinação em um ponto, mas não tenho muita certeza de como determinar quando podemos chamar a linha reta. Qualquer sugestão em relação a alguma abordagem / literatura já existente será muito apreciada.
Sei que R também conhece pacotes ou exemplos relevantes sobre esse tipo de investigação.
Muito obrigado.
ATUALIZAR
Graças ao Flounderer, fui capaz de expandir ainda mais o trabalho, montar uma estrutura e ajustar os parâmetros aqui e ali. Para fins de aprendizado, aqui estão meu código atual e uma saída gráfica.
library(ESPRESSO)
x <- skew.rnorm(800, 150, 5, 3)
x <- sort(x)
meanX <- mean(x)
sdX <- sd(x)
stdX <- (x-meanX)/sdX
y <- pnorm(stdX)
par(mfrow=c(2,2), mai=c(1,1,0.3,0.3))
hist(x, col="#03718750", border="white", main="")
nq <- diff(y)/diff(x)
plot.ts(nq, col="#6dc03480")
log.nq <- log(nq)
low <- lowess(log.nq)
cutoff <- .7
q <- quantile(low$y, cutoff)
plot.ts(log.nq, col="#6dc03480")
abline(h=q, col="#348d9e")
x.lower <- x[min(which(low$y > q))]
x.upper <- x[max(which(low$y > q))]
plot(x,y,pch=16,col="#03718750", axes=F)
axis(side=1)
axis(side=2)
abline(v=c(x.lower, x.upper),col="red")
text(x.lower, 1.0, round(x.lower,0))
text(x.upper, 1.0, round(x.upper,0))
fonte
Respostas:
Aqui está uma idéia rápida e suja, com base na sugestão de @ alex.
Parece um pouco com seus dados. A idéia agora é examinar a derivada e tentar ver onde ela é maior. Essa deve ser a parte da sua curva onde ela é mais reta, por ser em forma de S.
cutoff
fonte