Functions to make it easier to analyse and summarise data and results in R. For documentation, see https://hauselin.github.io/hausekeep/ Also check out my R tutorials here.
To install the package, type the following commands into the R console:
# install.packages("devtools")
devtools::install_github("hauselin/hausekeep") # you might have to install devtools first (see above)
summaryh()
generates formatted results and effect sizes for manuscriptsGenerate model summaries that can be copied and pasted straight into
your manuscript (no more copy-paste frustrations and errors!). Summaries
are formatted according to American Psychological Association (APA)
guidelines (get in touch if you require other formats). Example APA
summaries generated by summaryh()
:
b = 1.41, SE = 0.56, t(30) = 2.53, p = .017, r = 0.42
F(1, 30) = 9.00, p = .005, r = 0.48
t(23) = −4.67, p < .001, r = 0.70
See documentation for optional parameters.
model_lm <- lm(mpg ~ cyl, mtcars)
summary(model_lm) # base R summary()
summaryh(model_lm) # returns APA-formatted output in a data.table
# linear mixed effects regression
library(lme4); library(lmerTest) # load packages to fit mixed effects models
model <- lmer(weight ~ Time * Diet + (1 + Time | Chick), data = ChickWeight)
summary(model) # standard summary
summaryh(model)
# ANOVA
summaryh(aov(mpg ~ gear, mtcars))
# correlation
cor.test(mtcars$mpg, mtcars$cyl)
summaryh(cor.test(mtcars$mpg, mtcars$cyl))
es()
converts between effect size measuresThe es
function converts one effect size into other effect sizes
(e.g., d, r, R2, f, odds ratio, log odds ratio,
area-under-curve [AUC]). Also available at https://www.escal.site.
es(d = 0.2)
#> d: 0.2
#> d r R2 f oddsratio logoddsratio auc fishersz
#> 1 0.2 0.1 0.01 0.1 1.437 0.363 0.556 0.1
es(r = c(0.1, 0.4, 0.7))
#> r: 0.1 r: 0.4 r: 0.7
#> d r R2 f oddsratio logoddsratio auc fishersz
#> 1 0.201 0.1 0.01 0.101 1.440 0.365 0.557 0.100
#> 2 0.873 0.4 0.16 0.436 4.871 1.583 0.731 0.424
#> 3 1.960 0.7 0.49 0.980 35.014 3.556 0.917 0.867
outliers_mad()
identifies outliers using robust median absolute deviation approachexample <- c(1, 3, 3, 6, 8, 10, 10, 1000) # 1000 is an outlier
outliers_mad(example) # MAD approach
#> [1] 1 3 3 6 8 10 10 NA
outliersZ()
identifies outliers using Z-score cut-offexample <- c(1, 3, 3, 6, 8, 10, 10, 1000) # 1000 is an outlier
outliersZ(example) # SD approach
#> [1] 1 3 3 6 8 10 10 NA
# compare with MAD approach from above
outliersZ(example) # SD approach
#> [1] 1 3 3 6 8 10 10 NA
fit_ezddm()
fits EZ-diffusion model for two-choice response time taskslibrary(rtdists) # load package to help us simulate some data
data1 <- rdiffusion(n = 100, a = 2, v = 0.3, t0 = 0.5, z = 0.5 * 2) # simulate data
data2 <- rdiffusion(n = 100, a = 2, v = -0.3, t0 = 0.5, z = 0.5 * 2) # simulate data
dataAll <- rbind(data1, data2) # join data
dataAll$response <- ifelse(dataAll$response == "upper", 1, 0) # convert responses to 1 and 0
dataAll$subject <- rep(c(1, 2), each = 100) # assign subject id
dataAll$cond1 <- sample(c("a", "b"), 200, replace = T) # randomly assign conditions a/b
dataAll$cond2 <- sample(c("y", "z"), 200, replace = T) # randomly assign conditions y/z
# fit model to just entire data set (assumes all data came from 1 subject)
fit_ezddm(data = dataAll, rts = "rt", responses = "response")
# fit model to each subject (no conditions)
fit_ezddm(data = dataAll, rts = "rt", responses = "response", id = "subject")
# fit model to each subject by cond1
fit_ezddm(data = dataAll, rts = "rt", responses = "response", id = "subject", group = "cond1")
# fit model to each subject by cond1,cond2
fit_ezddm(data = dataAll, rts = "rt", responses = "response", id = "subject", group = c("cond1", "cond2"))
sca_lm()
fits every possible linear regression model given a set of predictors and covariatessca_lm()
is a basic implementation of specification curve
analysis for linear
regression.
# models to fit: mpg ~ cyl; mpg ~ carb; mpg ~ cyl + carb
sca_lm(data = mtcars, dv = "mpg", ivs = c("cyl", "carb")) # default no covariates
# models to fit (with and without covariate vs): mpg ~ cyl; mpg ~ carb; mpg ~ cyl + carb
sca_lm(data = mtcars, dv = "mpg", ivs = c("cyl", "carb"), covariates = "vs")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.