Try this:

long.prop.table <- function(x) {
    x <- as.factor(x)
    p = tabulate(x)/length(x)
    p[x]
}

Michael Weylandt

On Thu, Sep 22, 2011 at 3:41 PM, Jim Silverton <jim.silverton@gmail.com>wrote:

> >
> > Hi all,
> > I have a vector xm say:  xm = c(1,2,3,4,5,5,5,6,6)
> >
> > I want to return a vector with the corresponding probabilities based on
> the
> > amount of times the numbers occurred. For example, I should get the
> > following vector for xm:
> > prob.xm = c(1/9, 1/9, 1/9, 1/9, 3/9, 3/9, 3/9, 2/9, 2/9)
> >
>
> Using prop.table gives:
>
>
> Usage (with table)
>
> > prob.xm <- round( prop.table(table(xm)), digits=3)
> > prob.xm
> xm
>   1     2     3     4     5     6
> 0.111 0.111 0.111 0.111 0.333 0.222
>
> But I want the entire length of probabilities, not just a condensed
> version.
> Any help is greatl appreciated.
>
>
>
> --
> Thanks,
> Jim.
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]

