2011-11-08 4 views
4

기하 평균 10과 기하 표준 편차 2.5를 사용하여 로그 정규 분포에서 임의로 생성 된 20 개의 숫자를 얻고 싶습니다.R에서 지정된 로그 정규 분포를 사용하여 난수를 생성하는 방법은 무엇입니까?

이 작업을 수행하려면 어떤 R 함수를 사용해야합니까?

도움 주셔서 감사합니다.

+0

[이 설명] (https://msalganik.wordpress.com/2017/01/21/making-sense-of-the-rlnorm-function-in-r/)은 관련 코드를 포함하여 도움이되었습니다. . – Christopher

답변

11

rlnorm 기능 :

rlnorm(20, log(10), log(2.5)) 

더 일반적으로 R에 분포 D 일반적으로 사용할 수 있으며, P는 Q가 그 문자 R 형태는 제 배신 줄기 하였다 예정 : norm, lnorm, unif, gamma , ... 등등. 도움말 페이지에는 매개 변수의 세부 사항이 포함되어 있습니다. 이는 규약이 완전히 표준화되지 않은 weibull 또는 기타 배포판으로 작업하는 경우 필수적 일 수 있습니다.

+0

도움 주셔서 감사합니다. 위의 코드를 사용하여 숫자를 생성했으며 기하 평균 (GM)과 기하 표준 편차 (GSD)를 계산할 때 GM이 약간 벗어났습니다. 이것이 정상적인 지 궁금합니다. 다음은 계산식입니다. x <-rlnorm (20, log (10), log (2.5)) > 설명 (log (x)) Mean은 1.99입니다. GM = 특급 (1.99) = 7.32 SD = 0.86 GSD = 2.36 – user1009166

+3

샘플 크기가 20임을 알았습니까? 수렴을 테스트하려면 1e8의 샘플 크기를 시도하십시오. –

+2

mean 20과 sd 2.5를 가진 로그 법선의 샘플링 분포를보고 싶다면이 간단한 코드를 시도해보십시오 :'plot (exp (rowMeans (log (matrix (rlnorm (20000, log (20), log (2.5)), ncol = 20))))) ' –

관련 문제