Возможно, вы захотите взглянуть на квантильную регрессию, которая доступна в пакете quantreg .Будет ли это полезно, будет зависеть от того, хотите ли вы, чтобы абсолютный максимум в ваших «окнах» был приемлемым для некоторого экстремального квантиля, скажем, 95-го или 99-го?Если вы не знакомы с квантильной регрессией, рассмотрите линейную регрессию, которая соответствует модели для ожидания или среднего отклика, обусловленной ковариатами модели.Квантильная регрессия для среднего квантиля (0,5) соответствовала бы модели срединному отклику, зависящему от ковариат модели.
Вот пример использования пакета quantreg , чтобы показать вам, что яимею в виду.Сначала создайте несколько фиктивных данных, аналогичных тем, которые вы показываете:
set.seed(1)
N <- 5000
DF <- data.frame(Y = rev(sort(rlnorm(N, -0.9))) + rnorm(N),
X = seq_len(N))
plot(Y ~ X, data = DF)
Затем установите модель на 99-й процентиль (или квантиль 0,99):
mod <- rq(Y ~ log(X), data = DF, tau = .99)
Для генерации«подогнанная линия», мы прогнозируем на основе модели 100 равных интервалов значений в X
pDF <- data.frame(X = seq(1, 5000, length = 100))
pDF <- within(pDF, Y <- predict(mod, newdata = pDF))
и добавим подобранную модель к графику:
lines(Y ~ X, data = pDF, col = "red", lwd = 2)
Это должно дать вамэто: