Мой вопрос заключается в том, как сгенерировать выборку в R из логистики c CDF с помощью обратного метода CDF. Logisti c плотность равна p (θ) = exp (θ) / (1 + exp (θ)) ^ 2
Вот алгоритм для этого метода:
1: for t = 1 to T do
2: sample q(t) ∼ Unif(0, 1)
3: θ(t) ← F^−1(q(t))
4: end for
Вот мой код, но он просто генерирует вектор с тем же номером. Результат должен быть лог-вогнутым, но, очевидно, это не будет так, если я добавлю его в гистограмму, так в чем же проблема?
1007 * Сначала определите T как число dr aws, которое вы принимаете из равномерного распределения
T<-100000
sample_q<-runif(T,0,1)
Кажется, что plogis
даст вам кумулятивную функцию распределения, поэтому я полагаю, что я могу просто взять ее обратное:
generate_samples_from_logistic_CDF <- function(p) {
for(t in length(T))
cdf<-plogis((1+exp(p)/(exp(p))))
inverse_cdf<-(1/cdf)
return(inverse_cdf)
}
должен генерировать_samples_from_logistic_CDF (sample_q) но вместо этого он дает мне одинаковое значение для всего