[R] probability histogram question

Alec Stephenson astephen at efs.mq.edu.au
Fri Aug 20 02:14:28 CEST 2004

Alec Stephenson                                               
Department of Statistics
Macquarie University
NSW 2109, Australia 

>>> Joseph LeBouton <lebouton at msu.edu> 08/20/04 09:56am >>>
Hello, all;

I get an unexpected result when trying to plot a probability histogram
with R1.9.1 on windows xp:

#with the following code:

> x <- runif(100,0,1)
> hist(x)
> hist(x, freq=F)
> h <- hist(x, freq=F)
> summary(h)

#            Length Class  Mode
#breaks      11     -none- numeric
#counts      10     -none- numeric
#intensities 10     -none- numeric
#density     10     -none- numeric
#mids        10     -none- numeric
#xname        1     -none- character
#equidist     1     -none- logical

# The help file says that <h$density>  holds the values
#	plotted in the probability histogram.  If that's the
#	case, I'd expect that the sum of h$density for a histogram
	where freq=F would equal 1.0 ...  However:

> sum(h$density)

#returns the value :
#[1] 10

I would really like to plot values in the probablility histogram that
sum to 1, not 10.  Is there a switch in the hist(x) command that I'm
missing?  Or, is there another function that can do this?

The width of each bar is 0.1, so you need
sum(h$density) * 0.1
or in general
sum(h$density * diff(h$breaks))


More information about the R-help mailing list