Title: | Quantifying Construct Validity |
Version: | 1.0 |
Author: | R. Michael Furr [aut, cre], Sarah Heuckeroth [aut] |
Maintainer: | R. Michael Furr <FurrRM@wfu.edu> |
Date: | 2018-11-26 |
Description: | Primarily, the 'qcv' package computes key indices related to the Quantifying Construct Validity procedure (QCV; Westen & Rosenthal, 2003 <doi:10.1037/0022-3514.84.3.608>; see also Furr & Heuckeroth, in press). The qcv() function is the heart of the 'qcv' package, but additional functions in the package provide useful ancillary information related to the QCV procedure. |
Depends: | R (≥ 3.5.1.0) |
Imports: | graphics, stats |
License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
Encoding: | UTF-8 |
LazyData: | true |
RoxygenNote: | 6.1.1 |
NeedsCompilation: | no |
Packaged: | 2018-12-09 16:43:29 UTC; furrrm |
Repository: | CRAN |
Date/Publication: | 2018-12-17 23:30:07 UTC |
Actual correlations
Description
A very simple function, actr() computes the actual correlations between a focal test and a set of criterion variables
Usage
actr(df)
Arguments
df |
data frame consisting of focal test and a set of criterion variables |
Details
The df should contain only scores on the focal test and on the criterion variables. Any additional columns should be deleted. Focal test scores should be in the first column. If you need to reorder columns, you can do so by column number - eg, df <- df[c(1,3,2)] - or by column name - eg, df <- df[c("test", "crit1", "crit2")]
This function uses the "pairwise.complete.obs" option, which handles missing data by pairwise deletion.
Examples
data(motdat)
actr(motdat)
Median r
Description
Computes the median intercorrelation among a set of variables
Usage
medr(df)
Arguments
df |
data frame consisting only of variables for which a median intercorrelation is desired |
Details
The data frame should contain only the variables for which a median intercorrelation is desired. For Westen and Rosenthal's (2003) QCV procedure, the data frame should contain only participants' scores on the criterion variables.
This prcoedure handles missing data via the "pairwise.complete.obs" option.
Examples
data(motdat)
motdatc <- motdat[,2:13] #To retain only the criterion variables (dropping the focal test score)
medr(motdatc)
Example data used in Furr & Heuckeroth, on Impression Motivation (IM)
Description
Self-report data from 90 participants, responding to the IM scale and 12 criterion variables.
Usage
data(motdat)
Format
A data frame of 90 rows and 13 variables:
- imscale
Impression Motivation
- dep
Dependence
- mach
Machiavellianism
- dis
Distrust
- res
Resourcefulness
- se
Self-efficacy
- ext
Extraversion
- agr
Agreeableness
- comp
Complexity
- psc
Public self-consciousness
- sm
Self-monitoring
- anx
Anxiety
- nfb
Need to belong
Examples
data(motdat)
Plot for Quantifying Construct Validity
Description
Produces a plot of actual and predicted correlations
Usage
plotqcv(actr, predr, labels)
Arguments
actr |
vector of actual validity correlations |
predr |
vector of predicted validity correlations (in same order as actr) |
labels |
vector of text values that are the labels of the QCV criterion variables (in order of actr and predr) |
Details
Important: When entering values for the three arguments, order them identically. For example, if the "actr" values are ordered in terms of c(criterion A, criterion B, criterion C), then the values in "predr" and the labels in "labels" should be placed in that same order.
Examples
actrIM <- c(.46, .13, -.24, -.03, .12, .03, .39, .06, .51, .08, .24, .66)
predrIM <- c(.58, .24, -.04, .06, -.04, .18, .36, .08, .64, .56, .36, .56)
labelsIM <- c("Dep","Mach","Dis","Res","SE","Ext","Agr","Comp","PSC","SM","Anx","NTB")
plotqcv(actr=actrIM, predr=predrIM, labels=labelsIM)
Printing Quantifying Construct Validity
Description
Prints key results from the qcv() function
Usage
## S3 method for class 'qcv'
print(x, ...)
Arguments
x |
object of class "qcv" (i.e., output from the qcv() function |
... |
More arguments to pass to the print function. |
Examples
actrIM <- c(.46, .13, -.24, -.03, .12, .03, .39, .06, .51, .08, .24, .66)
predrIM <- c(.58, .24, -.04, .06, -.04, .18, .36, .08, .64, .56, .36, .56)
imqcvout <- qcv(n=90, actr=actrIM, predr=predrIM, medr=.075)
print(imqcvout)
Quantifying Construct Validity
Description
Computes key indices related to the Quantifyting Construct Validity (QCV) procedure (Westen & Rosenthal, 2003; see also Furr & Heuckeroth, in prep.)
Usage
qcv(n, actr, predr, medr)
Arguments
n |
sample size |
actr |
vector of actual validity correlations |
predr |
vector of predicted validity correlations (in same order as actr) |
medr |
median intercorrelation among criterion variables |
Details
This function applies procedures outlined by Westen and Rosenthal (2003; see also Furr & Heuckeroth, in prep).
Important: When entering values for the "actr" and "predr" arguments, order them identically. For example, if the "actr" values are ordered in terms of c(criterion A, criterion B, criterion C), then the values in "predr" should be placed in that same order. Otherwise all results will be incorrect.
Note that extreme zcontrast values (e.g., z > 38) create problems. The rcontrast-CV effect size is computed by converting z to p to t to r (see Westen & Rosenthal, Appendix A & B). However, R (and most other packages) doesn't have precision to convert an extremely large z (e.g., Z = 38) to a p value. For such z values, the p is converted to exactly zero. This makes it impossible to obtain t and rcontrast values. The qcv() function handles this by: a) identifying cases where p is initially exactly zero, and b) re-setting p to the smallest value possible, given the machine on which R us running (usually 2.225074e-308). It then proceeds to compute a t and rcontrast from that adjusted p value. It also prints a note stating that the adjustment has been made and that the p, t, and rcontrast values are lower-bound approximations.
Value
- ralerting-CV
The ralerting-CV effect size
- rcontrast-CV
The rcontrast-CV effect size
- zcontrast
The zcontrast value
- p
p values associated with Zcontrast
- N
Sample size
- k
Number of criterion variables
- szr
Standard deviation of (z-transformed) actual correlations
- medr
Median intercorrelation between the critertion variables
- rbarsq
Mean of the squared actual correlations (between focal test and criterion variables)
- t
t-value associated with p value
- rem
"Remarkablness" of size of contrast
Additional values are returned in a list, but not printed
References
Westen, D., & Rosenthal, R. (2003). Quantifying construct validity: Two simple measures. Journal of Personality and Social Psychology, 84, 608-618.
Furr, R. M., & Heukeroth, S. (In prep).Advancing the Interpretation and Computation of the "Quantifying Construct Validity" Procedure
Examples
actrIM <- c(.46, .13, -.24, -.03, .12, .03, .39, .06, .51, .08, .24, .66)
predrIM <- c(.58, .24, -.04, .06, -.04, .18, .36, .08, .64, .56, .36, .56)
qcv(n=90, actr=actrIM, predr=predrIM, medr=.075)
Inferential test for ralerting-CV
Description
Computes a p value for the ralerting-CV effect size
Usage
ralertingp(actr, predr, iter)
Arguments
actr |
vector of actual validity correlations |
predr |
vector of predicted validity correlations (in same order as actr) |
iter |
the number of randomization samples to be generated |
Details
An inferential test for ralerting-CV, not presented in the original Westen and Rosenthal (2003). The inferential test is based upon randomization procedures. That is, given a set of predicted correlations and a set of actual correlations, ralertingp() randomly pairs values from the two sets, computes an ralerting-CV value, and repeats this process many times (as determined by the user). The actual ralerting-CV value is then compared to the distribution of ralerting-CV values derived from the randomization process. The proportion of values from that distribution that are greater than the actual ralerting-CV value is then taken as a p value.
Important: When entering values for the "actr" and "predr" arguments, order them identically. For example, if the "actr" values are ordered in terms of c(criterion A, criterion B, criterion C), then the values in "predr" should be placed in that same order. Otherwise results will be incorrect.
For relatively small values of k (the number of criterion variables), it is recommended to increase iter (the number of randomization samples. For low-k situations, a small number of randomization samples can produce unstable p values. A larger number of randomization samples would produce more stable results.
It is possible that the randomization process produces no values that are greater than the actual ralerting-CV value. In such cases, ralertingp() reports the p value as < 1/iter.
Examples
actrIM <- c(.46, .13, -.24, -.03, .12, .03, .39, .06, .51, .08, .24, .66)
predrIM <- c(.58, .24, -.04, .06, -.04, .18, .36, .08, .64, .56, .36, .56)
ralertingp(actr=actrIM, predr=predrIM, iter=1000)