# script_mar_discreta # Autor # 01/05/2020 # Gerar valores de Y com função de probabilidade pj # pelo método da aceitação e rejeição rm(list = ls()) # Semente set.seed(12345) # tamanho da amostra n <- 100 # função de probabilidade de Y pj <- c(0.11, 0.12, 0.09, 0.08, 0.10, 0.08, 0.10, 0.09, 0.11, 0.12) # função de probabilidade de X qj <- rep(1,length(pj)) # máximo de pj/qj M <- max(pj/qj) # vetor para guardar os valores de Y y <- rep(0,n) i <- 1 while(i<=n){ # valor de x x <- round(runif(1,1,10)) u <- runif(1) if(u<=(pj[x]/(M*qj[x]))){ y[i] <- x i <- i+1 }else{ i<-i } } # os seis primeiros valores head(y)