umx_var {umx} | R Documentation |
Get variances from a df that might contain some non-numeric columns
Description
Pass in any dataframe and get variances despite some non-numeric columns. Cells involving these non-numeric columns are set to ordVar (default = 1).
Usage
umx_var(
df,
format = c("full", "diag", "lower"),
use = c("complete.obs", "pairwise.complete.obs", "everything", "all.obs",
"na.or.complete"),
ordVar = 1,
digits = NULL,
strict = TRUE,
allowCorForFactorCovs = FALSE
)
Arguments
df |
A dataframe of raw data from which to get variances. |
format |
to return: options are c("full", "diag", "lower"). Defaults to full, but this is not implemented yet. |
use |
Passed to |
ordVar |
The value to return at any ordinal columns (defaults to 1). |
digits |
digits to round output to (Ignored if NULL). Set for easy printing. |
strict |
Whether to allow non-ordered factors to be processed (default = FALSE (no)). |
allowCorForFactorCovs |
When ordinal data are present, use heterochoric correlations in affected cells, in place of covariances. |
Value
References
See Also
Other Miscellaneous Stats Functions:
FishersMethod()
,
SE_from_p()
,
geometric_mean()
,
harmonic_mean()
,
oddsratio()
,
reliability()
,
umxCov2cor()
,
umxHetCor()
,
umxParan()
,
umxWeightedAIC()
,
umx_apply()
,
umx_cor()
,
umx_means()
,
umx_r_test()
,
umx_round()
,
umx_scale()
,
umx
Examples
tmp = mtcars[,1:4]
tmp$cyl = ordered(mtcars$cyl) # ordered factor
tmp$hp = ordered(mtcars$hp) # binary factor
umx_var(tmp, format = "diag", ordVar = 1, use = "pair")
tmp2 = tmp[, c(1, 3)]
umx_var(tmp2, format = "diag")
umx_var(tmp2, format = "full")
data(myFADataRaw)
df = myFADataRaw[,c("z1", "z2", "z3")]
df$z1 = mxFactor(df$z1, levels = c(0, 1))
df$z2 = mxFactor(df$z2, levels = c(0, 1))
df$z3 = mxFactor(df$z3, levels = c(0, 1, 2))
umx_var(df, format = "diag")
umx_var(df, format = "full", allowCorForFactorCovs=TRUE)
# Ordinal/continuous mix
data(twinData)
twinData= umx_scale_wide_twin_data(data=twinData,varsToScale="wt",sep= "")
# Cut BMI column to form ordinal obesity variables
obLevels = c('normal', 'overweight', 'obese')
cuts = quantile(twinData[, "bmi1"], probs = c(.5, .8), na.rm = TRUE)
twinData$obese1=cut(twinData$bmi1,breaks=c(-Inf,cuts,Inf),labels=obLevels)
twinData$obese2=cut(twinData$bmi2,breaks=c(-Inf,cuts,Inf),labels=obLevels)
# Make the ordinal variables into mxFactors
ordDVs = c("obese1", "obese2")
twinData[, ordDVs] = umxFactor(twinData[, ordDVs])
varStarts = umx_var(twinData[, c(ordDVs, "wt1", "wt2")],
format= "diag", ordVar = 1, use = "pairwise.complete.obs")