Determines necessary sample size for the multiple correlation coefficient so that the confidence interval for the population multiple correlation coefficient is sufficiently narrow. Optionally, there is a certainty parameter that allows one to be a specified percent certain that the observed interval will be no wider than desired.

1 2 3 4 |

`Population.R2` |
value of the population multiple correlation coefficient |

`conf.level` |
confidence interval level (e.g., .95, .99, .90); 1-Type I error rate |

`width` |
width of the confidence interval (see |

`Random.Predictors` |
whether or not the predictor variables are random (set to |

`Random.Regressors` |
an alias for |

`which.width` |
defines the width that |

`p` |
the number of predictor variables |

`K` |
an alias for |

`degree.of.certainty` |
value with which confidence can be placed that describes the likelihood of obtaining a confidence interval less than the value specified (e.e.g, .80, .90, .95) |

`assurance` |
an alias for |

`certainty` |
an alias for |

`verify.ss` |
evaluates numerically via an internal Monte Carlo simulation the exact sample size given the specifications |

`Tol` |
the tolerance of the iterative function |

`...` |
for modifying the parameters of functions this function calls upon |

This function determines a necessary sample size so that the expected confidence
interval width for the squared multiple correlation coefficient is sufficiently narrow (when `degree.of.certainty=NULL`

) so that the obtained confidence
interval is no larger than the value specified with some desired degree of
certainty (i.e., a probability that the obtained width is less than the specified
width). The method depends on whether or not the regressors are regarded as fixed
or random. This is the case because the distribution theory for the two cases is
different and thus the confidence interval procedure is conditional on the type of
regressors. The default methods are approximate but can be made exact with the
specification of `verify.ss=TRUE`

, which performs an a priori Monte Carlo simulation study. Kelley (2007) and Kelley & Maxwell (2008) detail the methods used in the
function, with the former focusing on random regressors and the latter on fixed regressors.

It is recommended that the option `verify.ss`

should always be used! Doing so uses the method implied sample size as an estimate and then evaluates with an internal Monte Carlo simulation (i.e., via "brute-force" methods) the exact sample size given the goals specified. When `verify.ss=TRUE`

, the default number of iterations is 10,000 but this can be changed by specifying G=5000 (or some other value; 10000 is the recommended) When `verify.ss=TRUE`

is specified, an internal function `verify.ss.aipe.R2`

calls upon the `ss.aipe.R2.sensitivity`

function for purposes of the
internal Monte Carlo simulation study. See the `verify.ss.aipe.R2`

function for arguments that can be passed from `ss.aipe.R2`

to `verify.ss.aipe.R2`

.

`Required.Sample.Size` |
sample size that should be used given the conditions specified. |

This function without `verify.SS=FALSE`

can be slow to converge when
`verify.SS=TRUE`

, the function can take some time to converge (e.g., 15 minutes).
Most times this will not be the case, but it is possible in some situations.

Ken Kelley (University of Notre Dame; KKelley@ND.Edu)

Algina, J. & Olejnik, S. (2000). Determining sample size for accurate estimation of the squared
multiple correlation coefficient. *Multivariate Behavioral Research, 35*, 119–136.

Steiger, J. H. & Fouladi, R. T. (1992). R2: A computer program for interval estimation, power calculation,
and hypothesis testing for the squared multiple correlation. *Behavior research methods, instruments and computers, 4*, 581–582.

Kelley, K. (2007). Sample size planning for the squared multiple correlation coefficient:
Accuracy in parameter estimation via narrow confidence intervals,
*manuscripted submitted for publication*.

Kelley, K. & Maxwell, S. E. (2008). Power and accuracy for omnibus and targeted effects:
Issues of sample size planning with applications to multiple regression. In P. Alasuuta, J. Brannen, & L. Bickman (Eds.),
*Handbook of Social Research Methods* (pp. 166–192). Newbury Park, CA: Sage.

`ci.R2`

, `conf.limits.nct`

, `ss.aipe.R2.sensitivity`

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | ```
## Not run:
# Returned sample size should be considered approximate; exact sample
# size is obtained by specifying the argument 'verify.ss=TRUE' (see below).
# ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
# p=5, Random.Predictors=TRUE)
# Uncomment to run in order to get exact sample size.
# ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
# p=5, Random.Predictors=TRUE, verify.ss=TRUE)
# Same as above, except the predictor variables are considered fixed.
# Returned sample size should be considered approximate; exact sample
# size is obtained by specifying the argument 'verify.ss=TRUE'.
# ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
# p=5, Random.Predictors=FALSE)
# Uncomment to run in order to get exact sample size.
#ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
#p=5, Random.Predictors=FALSE, verify.ss=TRUE)
# Returned sample size should be considered approximate; exact sample
# size is obtained by specifying the argument 'verify.ss=TRUE'.
# ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
# p=5, degree.of.certainty=.85, Random.Predictors=TRUE)
# Uncomment to run in order to get exact sample size.
#ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
#p=5, degree.of.certainty=.85, Random.Predictors=TRUE, verify.ss=TRUE)
# Same as above, except the predictor variables are considered fixed.
# Returned sample size should be considered approximate; exact sample
# size is obtained by specifying the argument 'verify.ss=TRUE'.
# ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
# p=5, degree.of.certainty=.85, Random.Predictors=FALSE)
# Uncomment to run in order to get exact sample size.
#ss.aipe.R2(Population.R2=.50, conf.level=.95, width=.10, which.width="Full",
#p=5, degree.of.certainty=.85, Random.Predictors=FALSE, verify.ss=TRUE)
## End(Not run)
``` |

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.