[R] Simple 'frequency' function?

Dan Bolser dmb at mrc-dunn.cam.ac.uk
Fri Jul 9 14:22:13 CEST 2004


Hi, I have designed the following function to extract count frequencies
from an array of integers. For example...

# Tipical array
x <- cbind(1,1,1,1,1,2,2,2,2,3,3,3,3,4,5,6,7,22)

# Define the frequency function
frequency <-
  function(x){
    max <- max(x)
    j <- c()
    for(i in 1:max){
      j[i] <- length(x[x==i])
    }
    return(j)
}

fre <- frequency(x)
plot(fre)

How can I ... 

1) Make this a general function so my array could be of the form

# eats!
x <- cbind( "egg","egg","egg","egg","ham","ham","ham","ham","chicken" )

fre <- frequency(x)
plot(fre)

2) Make frequency return an object which I can call plot on (allowing the
prob=TRUE option).

Cheers,
Dan.




More information about the R-help mailing list