Learn R Programming

memisc (version 0.99.22)

items: Survey Items

Description

Objects of class item are data vectors with additional information attached to them like ``value labels'' and ``user-defined missing values'' known from software packages like SPSS or Stata.

Usage

## The constructor for objects of class "item"
## more convenient than new("item",...)
# S4 method for numeric
as.item(x,
  labels=NULL,  missing.values=NULL,
  valid.values=NULL,  valid.range=NULL,
  value.filter=NULL,  measurement=NULL,
  annotation=attr(x,"annotation"), …
  )
# S4 method for character
as.item(x,
  labels=NULL,  missing.values=NULL,
  valid.values=NULL,  valid.range=NULL,
  value.filter=NULL,  measurement=NULL,
  annotation=attr(x,"annotation"), …
  )

# S4 method for logical as.item(x,…) # x is first coerced to integer, # arguments in ... are then passed to the "numeric" # method.

# S4 method for factor as.item(x,…) # S4 method for ordered as.item(x,…) # S4 method for POSIXct as.item(x,…)

# S4 method for double.item as.item(x, labels=NULL, missing.values=NULL, valid.values=NULL, valid.range=NULL, value.filter=NULL, measurement=NULL, annotation=attr(x,"annotation"), … )

# S4 method for integer.item as.item(x, labels=NULL, missing.values=NULL, valid.values=NULL, valid.range=NULL, value.filter=NULL, measurement=NULL, annotation=attr(x,"annotation"), … )

# S4 method for character.item as.item(x, labels=NULL, missing.values=NULL, valid.values=NULL, valid.range=NULL, value.filter=NULL, measurement=NULL, annotation=attr(x,"annotation"), … )

# S4 method for datetime.item as.item(x, labels=NULL, missing.values=NULL, valid.values=NULL, valid.range=NULL, value.filter=NULL, measurement=NULL, annotation=attr(x,"annotation"), … )

Arguments

x

for as.item methods, any atomic vector; for the as.character, as.factor, as.integer, as.double, a vector with class "item"; for the unique, summary, str, print, [, and <- methods, a vector with class labelled.

labels

a named vector of the same mode as x.

missing.values

either a vector of the same mode as x, or a list with components "values", vector of the same mode as x (which defines individual missing values) and "range" a matrix with two rows with the same mode as x (which defines a range of missing values), or an object of class "missing.values".

valid.values

either a vector of the same mode as x, defining those values of x that are to be considered as valid, or an object of class "valid.values".

valid.range

either a vector of the same mode as x and length 2, defining a range of valid values of x, or an object of class "valid.range".

value.filter

an object of class "value.filter", that is, of classes "missing.values", "valid.values", or "valid.range".

measurement

level of measurement; one of "nominal", "ordinal", "interval", or "ratio".

annotation

a named character vector, or an object of class "annotation"

further arguments, ignored.

See Also

annotation labels value.filter

Examples

Run this code
# NOT RUN {
  x <- as.item(rep(1:5,4),
      labels=c(
          "First"      = 1,
          "Second"     = 2,
          "Third"      = 3,
          "Fourth"     = 4,
          "Don't know" = 5
        ),
      missing.values=5,
      annotation = c(
        description="test"
      ))
  str(x)
  summary(x)
  as.numeric(x)

  test <- as.item(rep(1:6,2),labels=structure(1:6,
                                      names=letters[1:6]))
  test
  test == 1
  test != 1
  test == "a"
  test != "a"
  test == c("a","z")
  test != c("a","z")
  test 
# }
# NOT RUN {
<!-- %in% 1:3 -->
# }
# NOT RUN {
  test 
# }
# NOT RUN {
<!-- %in% c("a","c") -->
# }
# NOT RUN {
  codebook(test)

  Test <- as.item(rep(letters[1:6],2),
                    labels=structure(letters[1:6],
                                     names=LETTERS[1:6]))
  Test
  Test == "a"
  Test != "a"
  Test == "A"
  Test != "A"
  Test == c("a","z")
  Test != c("a","z")
  Test 
# }
# NOT RUN {
<!-- %in% c("A","C") -->
# }
# NOT RUN {
  Test 
# }
# NOT RUN {
<!-- %in% c("a","c") -->
# }
# NOT RUN {
  as.factor(test)
  as.factor(Test)
  as.numeric(test)
  as.character(test)
  as.character(Test)

  as.data.frame(test)[[1]]
# }

Run the code above in your browser using DataLab