Learn R Programming

umx (version 4.59.0)

umxFactor: umxFactor

Description

A convenient version of OpenMx::mxFactor() supporting the common case in which the factor levels are those in the variable.

Usage

umxFactor(
  x = character(),
  levels = NULL,
  labels = levels,
  exclude = NA,
  ordered = TRUE,
  collapse = FALSE,
  verbose = FALSE,
  sep = NA
)

Value

  • OpenMx::mxFactor()

Arguments

x

A variable to recode as an mxFactor (see OpenMx::mxFactor())

levels

(default NULL). Like factor() but UNLIKE OpenMx::mxFactor(), unique values will be used if levels not specified.

labels

= levels (see OpenMx::mxFactor())

exclude

= NA (see OpenMx::mxFactor())

ordered

= TRUE By default return an ordered mxFactor

collapse

= FALSE (see OpenMx::mxFactor())

verbose

Whether to tell user about such things as coercing to factor

sep

If twin data are being used, the string that separates the base from twin index will try and ensure factor levels same across all twins.

References

See Also

  • umxFactanal(), OpenMx::mxFactor()

Other Data Functions: noNAs(), prolific_anonymize(), prolific_check_ID(), prolific_read_demog(), umx, umxHetCor(), umx_as_numeric(), umx_cont_2_quantiles(), umx_lower2full(), umx_make_MR_data(), umx_make_TwinData(), umx_make_fake_data(), umx_make_raw_from_cov(), umx_merge_randomized_columns(), umx_polychoric(), umx_polypairwise(), umx_polytriowise(), umx_read_lower(), umx_rename(), umx_reorder(), umx_score_scale(), umx_select_valid(), umx_stack(), umx_strings2numeric()

Examples

Run this code
umxFactor(letters)
umxFactor(letters, verbose = TRUE) # report coercions
umxFactor(letters, ordered = FALSE) # non-ordered factor like factor(x)
# Dataframe example:
x = umx_factor(mtcars[,c("cyl", "am")], ordered = FALSE); str(x)
# =================
# = Twin example: =
# =================
data(twinData)
tmp = twinData[, c("bmi1", "bmi2")]
tmp$bmi1[tmp$bmi1 <= 22] = 22
tmp$bmi2[tmp$bmi2 <= 22] = 22
# remember to factor _before_ breaking into MZ and DZ groups
x = umxFactor(tmp, sep = ""); str(x)
xmu_check_levels_identical(x, "bmi", sep="")

# Simple example to check behavior
x = round(10 * rnorm(1000, mean = -.2))
y = round(5 * rnorm(1000))
x[x < 0] = 0; y[y < 0] = 0
jnk = umxFactor(x); str(jnk)
df  = data.frame(x = x, y = y)
jnk = umxFactor(df); str(jnk)

Run the code above in your browser using DataLab