| split_ci {splithalfr} | R Documentation |
Calculate nonparametric bias-corrected and accelerated bootstrap confidence intervals for coefficients averaged across split replications
Description
Calculates nonparametric bias-corrected and accelerated bootstrap confidence intervals
via bcajack. Coefficients are ds should be a data frame as returned by
by_split: Each unique value of the column participant is considered a independent
sample of the target population. For each unique value of the column split in
ds, it selects the corresponding rows in ds, and passes the
values in the columns score_1 and score_2 as the first and
second argument to fn_coef. Any row in ds for which
score_1 or score_2 is NA is pairwise removed before passing the
data to fn_coef. Any coefficient that is NA is removed before passing
the data to to fn_summary.
Usage
split_ci(
ds,
fn_coef,
fn_average = function(values) {
mean(values, na.rm = TRUE)
},
replications = 1000,
...
)
Arguments
ds |
(data frame) a data frame with columns |
fn_coef |
(function) a function that calculates a bivariate coefficient. |
fn_average |
(function) a function that calculates an average across coefficients |
replications |
(integer) number of bootstrap replications |
... |
Additional arguments passed to |
Details
For averaging internal consistency coefficients, see Feldt and Charter (2006). For more information about bias-corrected and accelerated bootstrap confidence intervals, see Efron (1987).
Value
Confidence interval
References
Efron, B. (1987). Better bootstrap confidence intervals. Journal of the American statistical Association, 82(397), 171-185. doi:10.1080/01621459.1987.10478410
Feldt, L. S., & Charter, R. A. (2006). Averaging internal consistency reliability coefficients. Educational and Psychological Measurement, 66(2), 215-227. doi:10.1177/0013164404273947
See Also
Other split aggregation functions:
split_coefs()
Examples
# Generate five splits with scores that are correlated 0.00, 0.25, 0.5, 0.75, and 1.00
library(MASS)
ds_splits = data.frame(V1 = numeric(), V2 = numeric(), split = numeric())
for (r in 0:4) {
vars = mvrnorm(10, mu = c(0, 0), Sigma = matrix(c(10, 3, 3, 2), ncol = 2), empirical = FALSE)
ds_splits = rbind(ds_splits, cbind(vars, r, 1 : 10))
}
names(ds_splits) = c("score_1", "score_2", "replication", "participant")
# Calculate confidence interval
split_ci(ds_splits, cor)