데이터로부터 분포 추정 데이터 샘플이 rnorm(50,0,1)있으므로 데이터가

R의해 생성 된 데이터 샘플이 rnorm(50,0,1)있으므로 데이터가 분명히 정규 분포를 취합니다. 그러나 R데이터에 대한이 배포 정보를 “알지”않습니다.

R샘플이 어떤 종류의 분포에서 나오는지 추정 할 수 있는 방법 이 있습니까? 그렇지 않다면이 shapiro.test기능 을 사용 하고 계속 진행할 것입니다.



답변

있다 fitdistr의 기능 MASS 패키지 또는에서 일부 기능 fitdistrplus 패키지 . 다음은 후자의 예입니다.

require(fitdistrplus)

set.seed(1)
dat <- rnorm(50,0,1)
f1 <- fitdist(dat,"norm")
f2 <- fitdist(dat,"logis")
f3 <- fitdist(dat,"cauchy")

예를 들어

> f1
Fitting of the distribution ' norm ' by maximum likelihood 
Parameters:
      estimate Std. Error
mean 0.1004483 0.11639515
sd   0.8230380 0.08230325

그리고 당신은 줄거리를 볼 수 있습니다

plotdist(dat,"norm",para=list(mean=f1$estimate[1],sd=f1$estimate[2]))
plotdist(dat,"logis",para=list(location=f2$estimate[1],scale=f2$estimate[2]))
plotdist(dat,"cauchy",para=list(location=f3$estimate[1],scale=f3$estimate[2]))

정규 분포처럼 그럴듯 해 보입니다

그러나 물류 분포 일 수도 있습니다 (꼬리에서 구별하기 위해 더 큰 표본이 ​​필요할 것입니다)

qqplot을 사용하고 CDF를 보면 이것이 Cauchy 배포가 아님을 알 수 있습니다.