2013-06-18 27 views
7

içinde normal bir dağıtma hattı ekleyin Tamamen anlayamadığım garip bir problemle karşılaştım. Bir histogramın üzerine normal bir dağıtma çizgisi eklemem gerekiyor. Her adımın kodunu giriyorum ama satırlar yazdıktan sonra cevap yok. Neyin yanlış olduğunu bilmiyorum. MY kod şunlardır:Histogram

grades<-mydata$Exam1 
hist(grades,breaks=20,freq=T) #A correct histogram comes out. 
mean(grades,na.rm=T) #there is NA in the column so I remove it when calculating mean. 
[1] 75.15278 

sd(grades,na.rm=T) 
[1] 16.97443 

x<-seq(0,100,0.01) 
y<-dnorm(x,mean=mean(grades,na.rm=T),sd=sd(grades,na.rm=T)) 
lines(x,y)#and there's no response!no line showed up! 

benim koduyla yanlış bir şey var mı? Yardımlarınız için teşekkürler!

cevap

19

Ben R kodu varsayıyorum - o zaman bu deneyin:

grades <- mydata$Exam1 
hist(grades, prob=TRUE) 
curve(dnorm(x, mean=mean(grades), sd=sd(grades)), add=TRUE) 

Not Histograma normal dağılım karşılaştırırsanız, muhtemelen histogram olasılıkları ziyade frekansları görüntülemek istedikleri.

+1

İyi nokta. Ya da işlev tarafından döndürülen hist $ sayılarını normalleştirebilir. –

+0

Neyin yanlış olduğunu görüyorum. Çok teşekkür ederim! – zhang525986

4

hist(*, freq=FALSE), freq=TRUE değil.

+0

? bunun x' ve 'y' hesaplamaları ile ne ilgisi var? –

+3

@carlwitthoft Hiçbir şey. X ve y'nin hesaplanması gayet iyi, histogramın yoğunluğun ortaya çıkması için yanlış ölçekte çizilmesi. –