# GroupMean: Calculation of Groupwise Descriptive Statistics for Matrices In miceadds: Some Additional Multiple Imputation Functions, Especially for 'mice'

 GroupMean R Documentation

## Calculation of Groupwise Descriptive Statistics for Matrices

### Description

Calculates some groupwise descriptive statistics.

### Usage

```GroupMean(data, group, weights=NULL, extend=FALSE, elim=FALSE)

GroupSum(data, group, weights=NULL, extend=FALSE)

GroupSD(data, group, weights=NULL, extend=FALSE)

# group mean of a variable
gm(y, cluster, elim=FALSE)

# centering within clusters
cwc(y, cluster)
```

### Arguments

 `data` A numeric data frame `group` A vector of group identifiers `weights` An optional vector of sample weights `extend` Optional logical indicating whether the group means (or sums) should be extended to the original dimensions of the dataset. `elim` Logical indicating whether a case in a row should be removed from the calculation of the mean in a cluster `y` Variable `cluster` Cluster identifier

### Value

A data frame or a vector with groupwise calculated statistics

`mitml::clusterMeans`

`base::rowsum`, `stats::aggregate`, `stats::ave`

### Examples

```#############################################################################
# EXAMPLE 1: Group means and SDs data.ma02
#############################################################################

dat <- data.ma02[[1]] # select first dataset

#--- group means for read and math
GroupMean( dat[, c("read","math") ], group=dat\$idschool )
# using rowsum
a1 <- base::rowsum( dat[, c("read","math") ], dat\$idschool )
a2 <- base::rowsum( 1+0*dat[, c("read","math") ], dat\$idschool )
(a1/a2)[1:10,]
# using aggregate
stats::aggregate(  dat[, c("read","math") ], list(dat\$idschool), mean )[1:10,]

#--- extend group means to original dataset
GroupMean( dat[, c("read","math") ], group=dat\$idschool, extend=TRUE )
# using ave
stats::ave( dat[, "read" ], dat\$idschool  )
stats::ave( dat[, "read" ], dat\$idschool, FUN=mean )

## Not run:
#--- group standard deviations
# using aggregate
stats::aggregate(  dat[, c("read","math") ], list(dat\$idschool), sd )[1:10,]

#############################################################################
# EXAMPLE 2: Calculating group means and group mean centering
#############################################################################

dat <- data.ma07

# compute group means