수락 거부 방법을 사용하여 임의의 변수를 생성하는 다음 사용자 정의 함수를 만들었습니다. 그러나 호출 될 때마다 내 프로그램이 계속 진행되고 결국 충돌이 발생하거나 강제 종료해야합니다. 나는 그것을 여러 번 통과했다. 이 문제의 원인은 무엇입니까?내 프로그램이 중단되는 이유는 무엇입니까?
나는 이것을 쓰는 가장 좋은 방법이 아닐 수도 있다는 것을 알고있다. (어제는 R을 처음 사용했을 때다.) 그래서 추가 팁은 보너스 다.
acceptReject <- function(){
Z <- 0
Y <- c(0,0)
while(Y[2] < .5*(Y[1]-1)**2){
U <- runif(2,0,1)
Y <- log(U)
}
Z <- Y[1]
U <- runif(1,0,1)
if(U <= .5){
Z <- abs(Z)
}
else{
Z <- -abs(Z)
}
Z
}