2017-08-04 1 views
0

J'ai essayé de déterminer la validité d'une distribution normale que j'ai obtenu de la manière suivante:Comment tester quantitativement la validité de ma distribution normale?

xfit<-seq(min(x),max(x),length=1000) 
yfit<-dnorm(xfit,mean=mean(x),sd=sd(x)) 

Dans cet extrait de mon x code est un tableau avec des valeurs comprises entre 300 ~ -15 et -5.

I a évalué la distribution en le comparant à un histogramme et une parcelle QQ de la manière suivante:

#Fitting in histogram with normal curve 
x <- dataM31 
h<-hist(x, breaks=10, col="red", xlab="Absolute Magnitude", prob = TRUE) 
xfit<-seq(min(x),max(x),length=1000) 
yfit<-dnorm(xfit,mean=mean(x),sd=sd(x)) 
lines(xfit, yfit, col="blue", lwd=2) 

#Create a normality test plot (qq-plot) 
x_norm <- (x - mean(x))/sd(x) 
qqnorm(x_norm); abline(0,1) 

J'ai essayé d'effectuer tout type de test quantitatif de la validité de cette distribution normale, mais je Impossible de trouver une fonction qui le fait pour un tableau de données 1D par rapport à une distribution normale 2D. Y at-il une fonction qui pourrait le faire pour moi avec une relative facilité ou devrais-je complètement réécrire mon code pour que cela fonctionne?

Répondre

0

Ces fonctions fournissent les solutions pour le test de normalité et de l'estimation de densité, exécutez que dans la console et voir des exemples:

?shapiro.test() 
?ks.test() 
?density()