Skip to contents

Estimate Multiple Correlation Coefficients (R-Squared and Adjusted R-Squared) and Generate the Corresponding Sampling Distribution Using the Monte Carlo Method

Usage

RSqMC(object, alpha = c(0.05, 0.01, 0.001))

Arguments

object

Object of class mc, that is, the output of the MC() function.

alpha

Numeric vector. Significance level \(\alpha\).

Value

Returns an object of class betamc which is a list with the following elements:

call

Function call.

args

Function arguments.

thetahatstar

Sampling distribution of \(R^{2}\) and \(\bar{R}^{2}\).

vcov

Sampling variance-covariance matrix of \(R^{2}\) and \(\bar{R}^{2}\).

est

Vector of estimated \(R^{2}\) and \(\bar{R}^{2}\).

fun

Function used ("RSqMC").

Details

R-squared (\(R^{2}\)) and adjusted R-squared (\(\bar{R}^{2}\)) are derived from each randomly generated vector of parameter estimates. Confidence intervals are generated by obtaining percentiles corresponding to \(100(1 - \alpha)\%\) from the generated sampling distribution of \(R^{2}\) and \(\bar{R}^{2}\), where \(\alpha\) is the significance level.

See also

Other Beta Monte Carlo Functions: BetaMC(), DeltaRSqMC(), DiffBetaMC(), MC(), MCMI(), PCorMC(), SCorMC()

Author

Ivan Jacob Agaloos Pesigan

Examples

# Data ---------------------------------------------------------------------
data("nas1982", package = "betaMC")

# Fit Model in lm ----------------------------------------------------------
object <- lm(QUALITY ~ NARTIC + PCTGRT + PCTSUPP, data = nas1982)

# MC -----------------------------------------------------------------------
mc <- MC(
  object,
  R = 100, # use a large value e.g., 20000L for actual research
  seed = 0508
)

# RSqMC --------------------------------------------------------------------
out <- RSqMC(mc, alpha = 0.05)

## Methods -----------------------------------------------------------------
print(out)
#> Call:
#> RSqMC(object = mc, alpha = 0.05)
#> 
#> R-squared and adjusted R-squared
#> type = "hc3"
#>        est     se   R   2.5%  97.5%
#> rsq 0.8045 0.0602 100 0.6520 0.8797
#> adj 0.7906 0.0645 100 0.6272 0.8711
summary(out)
#> Call:
#> RSqMC(object = mc, alpha = 0.05)
#> 
#> R-squared and adjusted R-squared
#> type = "hc3"
#>        est     se   R   2.5%  97.5%
#> rsq 0.8045 0.0602 100 0.6520 0.8797
#> adj 0.7906 0.0645 100 0.6272 0.8711
coef(out)
#>       rsq       adj 
#> 0.8045263 0.7905638 
vcov(out)
#>             rsq         adj
#> rsq 0.003627964 0.003887104
#> adj 0.003887104 0.004164754
confint(out, level = 0.95)
#>         2.5 %    97.5 %
#> rsq 0.6520133 0.8796603
#> adj 0.6271572 0.8710646