Learn R Programming

Hmisc (version 5.1-3)

meltData: meltData

Description

Melt a Dataset To Examine All Xs vs Y

Usage

meltData(
  formula,
  data,
  tall = c("right", "left"),
  vnames = c("labels", "names"),
  sepunits = FALSE,
  ...
)

Value

data table

Arguments

formula

a formula

data

data frame or table

tall

see above

vnames

set to names to always use variable names instead of labels for X

sepunits

set to TRUE to create a separate variable Units to hold units of measurement. The variable is not created if no original variables have a non-blank units attribute.

...

passed to label()

Author

Frank Harrell

Details

Uses a formula with one or more left hand side variables (Y) and one or more right hand side variables (X). Uses data.table::melt() to melt data so that each X is played against the same Y if tall='right' (the default) or each Y is played against the same X combination if tall='left'. The resulting data table has variables Y with their original names (if tall='right') or variables X with their original names (if tall='left'), variable, and value. By default variable is taken as label()s of the tall variables.

See Also

label()

Examples

Run this code
d <- data.frame(y1=(1:10)/10, y2=(1:10)/100, x1=1:10, x2=101:110)
label(d$x1) <- 'X1'
units(d$x1) <- 'mmHg'
m=meltData(y1 + y2 ~ x1 + x2, data=d, units=TRUE) # consider also html=TRUE
print(m)
m=meltData(y1 + y2 ~ x1 + x2, data=d, tall='left')
print(m)

Run the code above in your browser using DataLab