Skip to content

betaMC: Generates Monte Carlo confidence intervals for standardized regression coefficients for models fitted by lm().

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

jeksterslab/betaMC

Repository files navigation

betaMC

Ivan Jacob Agaloos Pesigan 2024-12-29

CRAN Status R-Universe Status DOI Make Project R-CMD-check R Package Test Coverage Lint R Package Package Website (GitHub Pages) Compile LaTeX Shell Check pages-build-deployment codecov

Description

Generates Monte Carlo confidence intervals for standardized regression coefficients (beta) and other effect sizes, including multiple correlation, semipartial correlations, improvement in R-squared, squared partial correlations, and differences in standardized regression coefficients, for models fitted by lm(). betaMC combines ideas from Monte Carlo confidence intervals for the indirect effect (Pesigan and Cheung, 2023: http://doi.org/10.3758/s13428-023-02114-4) and the sampling covariance matrix of regression coefficients (Dudgeon, 2017: http://doi.org/10.1007/s11336-017-9563-z) to generate confidence intervals effect sizes in regression.

Installation

You can install the CRAN release of betaMC with:

install.packages("betaMC")

You can install the development version of betaMC from GitHub with:

if (!require("remotes")) install.packages("remotes")
remotes::install_github("jeksterslab/betaMC")

Example

In this example, a multiple regression model is fitted using program quality ratings (QUALITY) as the regressand/outcome variable and number of published articles attributed to the program faculty members (NARTIC), percent of faculty members holding research grants (PCTGRT), and percentage of program graduates who received support (PCTSUPP) as regressor/predictor variables using a data set from 1982 ratings of 46 doctoral programs in psychology in the USA (National Research Council, 1982). Confidence intervals for the standardized regression coefficients are generated using the BetaMC() function from the betaMC package.

library(betaMC)
df <- betaMC::nas1982

Regression

Fit the regression model using the lm() function.

object <- lm(QUALITY ~ NARTIC + PCTGRT + PCTSUPP, data = df)

Monte Carlo Sampling Distribution of Parameters

Normal-Theory Approach

mvn <- MC(object, type = "mvn")

Asymptotic distribution-free Approach

adf <- MC(object, type = "adf")

Heteroskedasticity Consistent Approach (HC3)

hc3 <- MC(object, type = "hc3")

Standardized Regression Slopes

Normal-Theory Approach

BetaMC(mvn, alpha = 0.05)
#> Call:
#> BetaMC(object = mvn, alpha = 0.05)
#> 
#> Standardized regression slopes
#> type = "mvn"
#>            est     se     R   2.5%  97.5%
#> NARTIC  0.4951 0.0755 20000 0.3402 0.6372
#> PCTGRT  0.3915 0.0771 20000 0.2366 0.5372
#> PCTSUPP 0.2632 0.0748 20000 0.1180 0.4104

Asymptotic distribution-free Approach

BetaMC(adf, alpha = 0.05)
#> Call:
#> BetaMC(object = adf, alpha = 0.05)
#> 
#> Standardized regression slopes
#> type = "adf"
#>            est     se     R   2.5%  97.5%
#> NARTIC  0.4951 0.0677 20000 0.3527 0.6162
#> PCTGRT  0.3915 0.0717 20000 0.2395 0.5200
#> PCTSUPP 0.2632 0.0768 20000 0.1080 0.4091

Heteroskedasticity Consistent Approach (HC3)

BetaMC(hc3, alpha = 0.05)
#> Call:
#> BetaMC(object = hc3, alpha = 0.05)
#> 
#> Standardized regression slopes
#> type = "hc3"
#>            est     se     R   2.5%  97.5%
#> NARTIC  0.4951 0.0794 20000 0.3243 0.6341
#> PCTGRT  0.3915 0.0818 20000 0.2200 0.5410
#> PCTSUPP 0.2632 0.0855 20000 0.0878 0.4256

Other Effect Sizes

The betaMC package also has functions to generate Monte Carlo confidence intervals for other effect sizes such as RSqMC() for multiple correlation coefficients (R-squared and adjusted R-squared), DeltaRSqMC() for improvement in R-squared, SCorMC() for semipartial correlation coefficients, PCorMC() for squared partial correlation coefficients, and DiffBetaMC() for differences of standardized regression coefficients.

Multiple Correlation Coefficients (R-squared and adjusted R-squared)

RSqMC(hc3, alpha = 0.05)
#> Call:
#> RSqMC(object = hc3, alpha = 0.05)
#> 
#> R-squared and adjusted R-squared
#> type = "hc3"
#>        est     se     R   2.5%  97.5%
#> rsq 0.8045 0.0623 20000 0.6433 0.8875
#> adj 0.7906 0.0667 20000 0.6178 0.8794

Improvement in R-squared

DeltaRSqMC(hc3, alpha = 0.05)
#> Call:
#> DeltaRSqMC(object = hc3, alpha = 0.05)
#> 
#> Improvement in R-squared
#> type = "hc3"
#>            est     se     R   2.5%  97.5%
#> NARTIC  0.1859 0.0684 20000 0.0511 0.3200
#> PCTGRT  0.1177 0.0547 20000 0.0261 0.2386
#> PCTSUPP 0.0569 0.0374 20000 0.0059 0.1502

Semipartial Correlation Coefficients

SCorMC(hc3, alpha = 0.05)
#> Call:
#> SCorMC(object = hc3, alpha = 0.05)
#> 
#> Semipartial correlations
#> type = "hc3"
#>            est     se     R   2.5%  97.5%
#> NARTIC  0.4312 0.0859 20000 0.2261 0.5657
#> PCTGRT  0.3430 0.0828 20000 0.1615 0.4884
#> PCTSUPP 0.2385 0.0781 20000 0.0766 0.3875

Squared Partial Correlation Coefficients

PCorMC(hc3, alpha = 0.05)
#> Call:
#> PCorMC(object = hc3, alpha = 0.05)
#> 
#> Squared partial correlations
#> type = "hc3"
#>            est     se     R   2.5%  97.5%
#> NARTIC  0.4874 0.1181 20000 0.1822 0.6477
#> PCTGRT  0.3757 0.1150 20000 0.1074 0.5544
#> PCTSUPP 0.2254 0.1131 20000 0.0243 0.4540

Differences of Standardized Regression Coefficients

DiffBetaMC(hc3, alpha = 0.05)
#> Call:
#> DiffBetaMC(object = hc3, alpha = 0.05)
#> 
#> Differences of standardized regression slopes
#> type = "hc3"
#>                   est     se     R    2.5%  97.5%
#> NARTIC-PCTGRT  0.1037 0.1417 20000 -0.1820 0.3777
#> NARTIC-PCTSUPP 0.2319 0.1330 20000 -0.0407 0.4819
#> PCTGRT-PCTSUPP 0.1282 0.1361 20000 -0.1438 0.3880

Documentation

See GitHub Pages for package documentation.

Citation

To cite betaMC in publications, please cite Pesigan & Cheung (2023).

References

Dudgeon, P. (2017). Some improvements in confidence intervals for standardized regression coefficients. Psychometrika, 82(4), 928–951. https://doi.org/10.1007/s11336-017-9563-z

National Research Council. (1982). An assessment of research-doctorate programs in the United States: Social and behavioral sciences. National Academies Press. https://doi.org/10.17226/9781

Pesigan, I. J. A., & Cheung, S. F. (2023). Monte Carlo confidence intervals for the indirect effect with missing data. Behavior Research Methods, 56(3), 1678–1696. https://doi.org/10.3758/s13428-023-02114-4

About

betaMC: Generates Monte Carlo confidence intervals for standardized regression coefficients for models fitted by lm().

Topics

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Packages

No packages published

Languages