Learn R Programming

Hmisc (version 5.1-2)

nobsY: Compute Number of Observations for Left Hand Side of Formula

Description

After removing any artificial observations added by addMarginal, computes the number of non-missing observations for all left-hand-side variables in formula. If formula contains a term id(variable) variable is assumed to be a subject ID variable, and only unique subject IDs are counted. If group is given and its value is the name of a variable in the right-hand-side of the model, an additional object nobsg is returned that is a matrix with as many columns as there are left-hand variables, and as many rows as there are levels to the group variable. This matrix has the further breakdown of unique non-missing observations by group. The concatenation of all ID variables, is returned in a list element id.

Usage

nobsY(formula, group=NULL, data = NULL, subset = NULL,
      na.action = na.retain, matrixna=c('all', 'any'))

Value

an integer, with an attribute "formula" containing the original formula but with an id variable (if present) removed

Arguments

formula

a formula object

group

character string containing optional name of a stratification variable for computing sample sizes

data

a data frame

subset

an optional subsetting criterion

na.action

an optional NA-handling function

matrixna

set to "all" if an observation is to be considered NA if all the columns of the variable are NA, otherwise use matrixna="any" to consider the row missing if any of the columns are missing

Examples

Run this code
d <- expand.grid(sex=c('female', 'male', NA),
                 country=c('US', 'Romania'),
                 reps=1:2)
d$subject.id <- c(0, 0, 3:12)
dm <- addMarginal(d, sex, country)
dim(dm)
nobsY(sex + country ~ 1, data=d)
nobsY(sex + country ~ id(subject.id), data=d)
nobsY(sex + country ~ id(subject.id) + reps, group='reps', data=d)
nobsY(sex ~ 1, data=d)
nobsY(sex ~ 1, data=dm)
nobsY(sex ~ id(subject.id), data=dm)

Run the code above in your browser using DataLab