J'essaie de calculer la fonction de distribution cumulative pour un ensemble de valeurs.Problème d'histogramme GSL
J'ai calculé l'histogramme en utilisant gsl et j'ai essayé de calculer le CDF à partir d'ici, mais il semble que les valeurs sont décalées d'une position.
C'est le code que je utilise:
gHist = gsl_histogram_alloc((maxRange - minRange)/5);
gsl_histogram_set_ranges_uniform(gHist, minRange, maxRange);
for (int j = 0; j < ValidDataCount; j++)
gsl_histogram_increment (gHist, ValAdd[j]);
gsl_histogram_pdf * p = gsl_histogram_pdf_alloc(gsl_histogram_bins(gHist));
gsl_histogram_pdf_init (p, gHist);
for (int j = 0; j < gsl_histogram_bins(gHist) + 1 ; j++)
printf ("%f ", p->sum[j]);
L'histogramme est comme ceci: 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 .... va sur comme ça. il y a un total de 20 valeurs
Et la cdf est: 0,00 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,05 0,1 0,1 ...
Pourquoi est-il un 0 sur la première position? Ne devrait-il pas commencer avec 0.05?
Merci.
réponse est venue assez tard: l'espoir est encore utile. –