Learn R Programming

scrime (version 1.2.9)

rowFreqs: Rowwise Frequencies

Description

Computes the frequencies of the levels that the categorical variables in a matrix show.

Usage

rowFreqs(x, levels = 1:3, divide.by.n = FALSE, affy = FALSE,
   includeNA = FALSE, useNN = c("not", "only", "also"), check = TRUE)

Arguments

x
a matrix in which each row represents a categorical variable (e.g., a SNP) and each column an observation, where the variables are assumed to show the levels specified by levels. Missing values are allowed in x.
levels
vector specifying the levels that the categorical variables in x show. Ignored if affy = TRUE.
divide.by.n
should the numbers of observations showing the respective levels be divided by the total number of observations, i.e. by ncol(x)? If FALSE, these numbers are divided by the number of non-missing values of the respecti
affy
logical specifying whether the SNPs in x are coded in the Affymetrix standard way. If TRUE, levels = c("AA", "AB", "BB") and useNN = "also" will be used (the latter only when includeNA
includeNA
should a column be added to the output matrix containing the number of missing values for each variable?
useNN
character specifying whether missing values can also be coded by "NN". If useNN = "not" (default), missing values are assumed to be coded only by NA. If "only", then missing values are assume
check
should it be checked whether some of the variables show other levels than the one specified by levels?

Value

  • A matrix with the same number of rows as x containing for each variable the numbers of observations showing the levels specified by levels.

See Also

rowTables

Examples

Run this code
# Generate a matrix containing data for 10 categorical 
# variables with levels 1, 2, 3.

mat <- matrix(sample(3, 500, TRUE), 10)

rowFreqs(mat)

# leads to the same results as 

rowTables(mat) / ncol(mat)

# If mat contains missing values

mat[sample(500, 20)] <- NA

# then

rowFreqs(mat)

# leads to the same result as

rowTables(mat) / rowSums(!is.na(mat))

Run the code above in your browser using DataLab