# percentages

##### Easy Creation of Tables of Percentages

The generic function `percentages`

and its methods
create one- or multidimensional tables of percentages. As such,
the function `percentages`

can be viewed as a convenience
interface to `prop.table`

. However, it also
allows to obtain standard errors and confidence intervals.

##### Usage

```
percentages(obj, …)
# S3 method for table
percentages(obj,
by=NULL, which=NULL, se=FALSE, ci=FALSE, ci.level=.95, …)
# S3 method for formula
percentages(obj,
data=parent.frame(), weights=NULL, …)
# S3 method for percentage.table
as.data.frame(x, …)
# S3 method for xpercentage.table
as.data.frame(x, …)
```

##### Arguments

- obj
an object; a contingency table or a formula. If it is a formula, its left-hand side determines the factor or combination of factors for which percentages are computed while its right-hand side determines the factor or combination of factors that define the groups within which percentages are computed.

- by
a character vector with the names of the factor variables that define the groups within which percentages are computed. Percentages sum to 100 within combination of levels of these factors.

- which
a character vector with the names of the factor variables for which percentages are computed.

- se
a logical value; determines whether standard errors are computed.

- ci
a logical value; determines whether confidence intervals are computed. Note that the confidence intervals are for infinite (or very large) populations.

- ci.level
a numerical value, the required confidence level of the confidence intervals.

- data
a contingency table (an object that inherits from "table") or a data frame or an object coercable into a data frame.

- weights
an optional vector of weights. Should be NULL or a numeric vector.

- x
an object coerced into a data frame.

- …
Further arguments, ignored.

##### Value

An array that inherits classes "percentage.table" and "table". If
`percentages`

was called with `se=TRUE`

or `ci=TRUE`

then the result additionally inherits class "xpercentage.table".

##### Examples

```
# NOT RUN {
# Two equivalent ways to create the same table
100*prop.table(UCBAdmissions)
percentages(UCBAdmissions)
# Three equivalent ways to create the same table
100*prop.table(UCBAdmissions,c(2,3))
(p0 <- percentages(UCBAdmissions,by=c("Gender","Dept")))
percentages(UCBAdmissions,which="Admit")
# Percentage table as data frame
as.data.frame(p0)
# Three equivalent ways to create the same table
100*prop.table(margin.table(UCBAdmissions,c(1,2)),2)
percentages(UCBAdmissions,which="Admit",by="Gender")
percentages(Admit~Gender,data=UCBAdmissions)
# Three equivalent ways to create the same table
100*prop.table(margin.table(UCBAdmissions,c(1,3)),2)
percentages(Admit~Dept,data=UCBAdmissions)
percentages(Admit~Dept,data=as.data.frame(UCBAdmissions),
weights=Freq)
# Standard errors and confidence intervals
percentages(Admit~Dept,data=UCBAdmissions,se=TRUE)
percentages(Admit~Dept,data=UCBAdmissions,ci=TRUE)
(p<- percentages(Admit~Dept,data=UCBAdmissions,ci=TRUE,se=TRUE))
# An extended table of percentages as data frame
as.data.frame(p)
# }
```

*Documentation reproduced from package memisc, version 0.99.27.3, License: GPL-2*