Вы имеете дело с категориальной переменной «интервалы», которая создает дискретное наблюдение счетчиков на основе предполагаемой базовой непрерывной переменной, из которой вы взяли точки останова. Какая-то запутанная ситуация с данными. Технически у вас есть данные с интервальной цензурой. Однако, если вы используете экспоненциальное распределение в качестве предположения, те "средние значения", которые вы вычислили, на самом деле являются средними точками, но нельзя ожидать, что они будут средними значениями экспоненциально распределенной переменной. См. ниже мои пересмотренные комментарии о int.means
наблюдения. (Так что теперь я расширим свой первоначальный комментарий, включив в него немного кода R.)
Если мы возьмем конечные точки ваших интервалов в качестве переменной разрывов, а также рассчитаем пропорции в наблюдаемых данных, мы получим:
brks <- c(0, 10,20,30,40,50,75,100,Inf)
freq <- c(165, 90, 55, 25, 20, 35, 30, 15)
prop<- freq/sum(freq)
prop
#-----
[1] 0.37931034 0.20689655 0.12643678 0.05747126 0.04597701 0.08045977 0.06896552 0.03448276
round(prop,2)
[1] 0.38 0.21 0.13 0.06 0.05 0.08 0.07 0.03
Затем мы можем показать, как может «выглядеть» экспоненциально распределенная переменная с аналогичным средним значением (в отношении пропорций), если ее разделить на эти интервалы:
table( findInterval( rexp(100, 1/15), brks) )/100
1 2 3 4 5 6 7
0.47 0.24 0.12 0.08 0.04 0.04 0.01
Итак, мы могли бы попробовать среднее значение выше 15, скажем, 20?
> table( findInterval( rexp(100, 1/20), brks) )/100
1 2 3 4 5 6 7 8
0.37 0.24 0.13 0.09 0.07 0.07 0.02 0.01
> round(prop,2)
[1] 0.38 0.21 0.13 0.06 0.05 0.08 0.07 0.03
Таким образом, вы можете хорошо подобрать нижний предел наблюдений, но экспоненциально распределенная переменная, кажется, имеет несколько «тоньше» хвост. Поскольку вас интересуют верхние границы данных, вы можете захотеть получить лучшее соответствие на верхних границах, но это будет противоречить вашей цели — статистически обоснованному доверительному интервалу. Вы как бы застряли, поскольку ваши данные не являются должным образом «экспоненциальным» набором наблюдений. (Увеличен размер симуляции до 1000, чтобы уменьшить влияние шума.)
> table( findInterval( rexp(1000, 1/25), brks) )/1000
1 2 3 4 5 6 7 8
0.329 0.222 0.141 0.103 0.056 0.094 0.034 0.021
> round(prop,2)
[1] 0.38 0.21 0.13 0.06 0.05 0.08 0.07 0.03
Подгонка там не выглядит ужасной. Если бы параметр скорости экспоненциального распределения был равен 1/25, то это была бы доля наблюдений, превышающая 150:
1-pexp(150, 1/25)
#[1] 0.002478752
Возможно полезно: http://jsdajournal.springeropen.com/articles/10.1186/s40488-015-0028-6
Вы также можете попробовать выполнить поиск на сайте CrossValidated.com, где существуют некоторые предыдущие обсуждения.
Изменить. Первоначально я думал, что эти значения int.means являются средними точками границ интервала, но это явно не так, поскольку они кажутся близкими к средним точкам, но имеют значительный джиттер вокруг средних точек. Кроме того, эти значения не согласуются с экспоненциальным распределением, так как в наиболее густонаселенном интервале (0-10) наблюдения должны быть «слева» от средней точки, а не даже слева от средней точки. Вероятно, он должен быть 4,0 или 4,5, но уж точно не выше 5,5. Это предполагает, что в основе этого физического процесса лежит какое-то другое распределение, возможно, какое-то гамма-распределение, которое падает до нуля около нуля, но достигает пика в начале интервала 0-10, а затем имеет более длинный хвост.
person
IRTFM
schedule
27.02.2020