umxAPA | R Documentation |
umxAPA
creates APA-style reports from a range of statistical models, or to summarize data. I wrote it to suit me.
Nice alternatives include jtools::summ
.
Example functionality includes:
Given an stats::lm()
model, umxAPA
will return a formatted effect, including 95% CI.
e.g.: umxAPA(lm(mpg~wt, data=mtcars), "wt")
yields: \beta
= -5.34 [-6.48, -4.20], p < 0.001. here "wt"
restricts the output to just the named effect.
umxAPA
also supports t.test()
, stats::glm()
, cor.test()
, and others as I need them.
Get a CI from obj=beta
and se=se : umxAPA(-0.30, .03)
returns \beta
= -0.3 [-0.36, -0.24]
Back out an SE from \beta
and CI: umxAPA(-0.030, c(-0.073, 0.013))
returns \beta
= -0.03, se = 0.02
Given only a number as obj, will be treated as a p-value, and returned in APA format.
Given a dataframe, umxAPA
will return a table of correlations with means and SDs in the last row. e.g.:
umxAPA(mtcars[,c("cyl", "wt", "mpg", )]
yields:
cyl | wt | mpg | |
cyl | 1 | 0.78 | -0.85 |
wt | 0.78 | 1 | -0.87 |
mpg | -0.85 | -0.87 | 1 |
mean_sd | 6.19 (1.79) | 3.22 (0.98) | 20.09 (6.03) |
umxAPA(
obj = .Last.value,
se = NULL,
p = NULL,
std = FALSE,
digits = 2,
use = "complete",
min = 0.001,
addComparison = NA,
report = c("markdown", "html", "none", "expression"),
lower = TRUE,
test = c("Chisq", "LRT", "Rao", "F", "Cp"),
SEs = TRUE,
means = TRUE,
suffix = "",
cols = NA
)
obj |
A model (e.g. |
se |
If obj is a beta, se treated as standard-error (returning a CI). If obj is a model, used to select effect of interest (blank for all effects). Finally, set se to the CI c(lower, upper), to back out the SE. |
p |
If obj is a beta, use p-value to compute SE (returning a CI). |
std |
Whether to report std betas (re-runs model on standardized data). |
digits |
How many digits to round output. |
use |
If obj is a data.frame, how to handle NAs (default = "complete") |
min |
For a p-value, the smallest value to report numerically (default .001) |
addComparison |
For a p-value, whether to add "</=" default (NA) adds "<" if necessary |
report |
What to return (default = 'markdown'). Use 'html' to open a web table. none doesn't print. expression can contain |
lower |
Whether to not show the lower triangle of correlations for a data.frame (Default TRUE) |
test |
If obj is a glm, which test to use to generate p-values options = "Chisq", "LRT", "Rao", "F", "Cp" |
SEs |
Whether or not to show correlations with their SE (Default TRUE) |
means |
Whether or not to show means in a correlation table (Default TRUE) |
suffix |
A string to append to the result. Mostly used with report = "expression" |
cols |
Optional, pass in a list of column names when using umxAPA with a dataframe input. |
string
SE_from_p()
Other Reporting Functions:
umx
,
umxFactorScores()
,
umxGetLatents()
,
umxGetManifests()
,
umxGetModel()
,
umxGetParameters()
,
umxParameters()
,
umx_aggregate()
,
umx_time()
# ========================================
# = Report lm (regression/anova) results =
# ========================================
umxAPA(lm(mpg ~ wt + disp, mtcars)) # Report all parameters
umxAPA(lm(mpg ~ wt + disp, mtcars), "wt") # Just effect of weight
umxAPA(lm(mpg ~ wt + disp, mtcars), std = TRUE) # Standardize model!
###############
# GLM example #
###############
df = mtcars
df$mpg_thresh = 0
df$mpg_thresh[df$mpg > 16] = 1
m1 = glm(mpg_thresh ~ wt + gear,data = df, family = binomial)
umxAPA(m1)
###############
# A t-Test #
###############
umxAPA(t.test(x = 1:10, y = c(7:20)))
umxAPA(t.test(extra ~ group, data = sleep))
# ======================================================
# = Summarize DATA FRAME: Correlations + Means and SDs =
# ======================================================
umxAPA(mtcars[,1:3])
umxAPA(mtcars[,1:3], digits = 3)
umxAPA(mtcars[,1:3], lower = FALSE)
## Not run:
umxAPA(mtcars[,1:3], report = "html")
## End(Not run)
# ==========================================
# = CONFIDENCE INTERVAL from effect and se =
# ==========================================
umxAPA(.4, .3) # parameter 2 interpreted as SE
# Input beta and CI, and back out the SE
umxAPA(-0.030, c(-0.073, 0.013), digits = 3)
# ====================
# = Format a p-value =
# ====================
umxAPA(.0182613) # 0.02
umxAPA(.00018261) # < 0.001
umxAPA(.00018261, addComparison = FALSE) # 0.001
# ========================
# = Report a correlation =
# ========================
data(twinData)
tmp = subset(twinData, zygosity %in% c("MZFF", "MZMM"))
m1 = cor.test(~ wt1 + wt2, data = tmp)
umxAPA(m1)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.