2011-08-12 5 views
1

안녕하세요, 도움에 미리 감사드립니다!무작위로 제로 팽창 분포에서 값을 선택 R

나는 다시 확률 분포에 따라 값을 임의로 선택하는 것에 대해 question에게 물었습니다. 이것은 관련이 있지만, 나는 그것이 자신의 게시물을받을 가치가 있다고 생각한다.

마지막 질문에서 작성한 벡터는 이진수 였으므로 이제 가중치 벡터 (즉, 정수가있는 정수)를 생성하고 싶습니다. 긴 꼬리가있는 제로 팽창 또는 준 포아송 분포에서 샘플링하므로 다른 값보다 0을 선택할 확률이 훨씬 높지만 큰 값 (예 : 63)을 선택할 가능성이 있습니다.

나는 포아송 분포에서 값을 선택하고 주어진 길이의 벡터를 만들기 위해 rpois를 사용할 수 있습니다. 이것은 내가하고 싶은 것과 비슷하므로 예제로 사용하겠습니다.

e=seq(0:63) 
vec<-c(0,0,0,1,1,1) 
ones <- which(vec == 1L) 
temp=rpois((sum(vec)),e) 
vec[ones]<-temp 

이것은 포아송 분포에서 선택된 특정 수의 값을 벡터에 할당하는 데 적합합니다. 어쨌든 의사가 포아송으로 만들거나 팽창시키지 않습니까?

답변

4

다른 배포판의 큰 목록이 여기에있다 다음 VGAM 패키지 내에서 일부 기능이있는 것처럼 제로 팽창 포아를 들어 http://cran.r-project.org/web/views/Distributions.html

... 준 포아송를 들어

install.packages("gamlss.dist") 
library(gamlss.dist) 

rZIP(n, mu, sigma) 

, 그것은 본다 quasipoissonff,하지만 그것은 오히려 생성보다는 피팅 것 같습니다. Arthur Charpentier가 여기에 뭔가있는 것처럼 보입니다.하지만 배포판을 얻으려면 무엇을 찾고 있는지 알고 있어야합니다. http://freakonometrics.blog.free.fr/index.php?post/2010/10/21/How-to-genrerate-variables-from-a-quasi-Poisson-distribution

+0

고마워요, 이것이 제가 찾고 있었던 것입니다. – Laura