Learn R Programming

IATscores (version 0.1-2)

RobustScores: Compute the Robust IAT scoers

Description

This is the main function of the package. It allows to compute many variants of the robust IAT scores all with a single command.

Usage

RobustScores(IATdata, P1 = c("none", "fxtrim", "fxwins", "trim10", "wins10", "inve10"), P2 = c("ignore", "exclude", "recode", "separate", "recode600"), P3 = c("dscore", "gscore", "wpr90", "minid", "minid_t10", "minid_w10", "minid_i10"), P4 = c("nodist", "dist"), maxMemory = 1000, verbose = TRUE)

Arguments

IATdata
a dataframe with the following columns:
  • subject: (factor or coercible to factor). Univocally identifies a participant.
  • correct: (logical). has value TRUE or 1 if the trial was answered correctly, FALSE or 0 otherwise.
  • latency: (numeric). Response latency, in ms.
  • blockcode: (factor or string). Can assume only two values, "pair1" and "pair2". "pair1" is for one critical block and "pair2" is the other critical block.
  • praccrit. (factor, optional). Can assume only two values, "prac" is for practice combined categorization block and "crit" is for critical combined categorization block. In a IAT with 60 trials for each double categorization block, the first 20 are sometimes administered as practice block, the other 40 as critical.

P1
(Vector of strings). Determines how the latencies are treated for computing the scores. Can include one or more of the following strings.
  1. "none": Do nothing.
  2. "fxtrim": Trim values < 400ms
  3. "fxwins": Values < 300ms assume the value 300ms and values > 3000ms assume the value 3000ms
  4. "trim10": 10% trimming
  5. "wins10": 10% winsorizing
  6. "inve10": 10% inverse trimming (i.e., trim central values)

P2
(Vector of strings). Determines how the error latencies are treated. Can include one or more of the following strings.
  1. "ignore": Disregard the correct-error distinction, treat all the latencies as if they were correct latencies.
  2. "exclude": Remove error latencies and consider only the correct ones.
  3. "recode": Recode the error latencies with the M+2SD of correct latencies. In the computation of the M and of the SD, all correct latencies are considered that are < 10s.
  4. "separate": Apply parameter P1 separately for correct and error latencies. Notice that for parameter 1 equal to "none", "fxtrim", and "fxwins", if P4 = "ignore" and P4 = "separate", the result is the same.)
  5. "recode600": Recode the error latencies with the the mean of correct latencies + 600ms. In the computation of the Mean, all correct latencies are considered that are < 10s.

P3
The algorithm for computing the Dscores. Can include one or more of the following strings.
  1. "dscore". Compute the Dscores as M pair2 - Mpair1 / pooled SD.
  2. "gscore". Compute the Gscores, as shown in Nosek, Bar-Anan, Sriram, & Greenwald (2013).
  3. "wpr90". Compute the scores based on the worst-performance-rule, which are the same as the Dscores, but instead of the mean, the 90th percentile is used in the numerator.
  4. minid. Compute the minidifferences, i.e., the differences between any latency in pair2 and any latency in pair1. Then compute the IAT scores as the Mean of the minidifferences, divided by their SD.
  5. minid_t10. Compute the 10% trimmed minidifferences, which are identical to the mididiffernces, but instead of the mean, the 10% trimmed mean is used.
  6. "minid_w10" Compute the 10% winsorized minidifferences, which are as the minidifferences, but instead of the mean, the 10% winsorized mean is used.
  7. "minid_i10" Compute the 10% inverse_trimmed minidifferences, which are as the minidifferences, but instead of the mean, the 10% inverse trimmed mean is used.

P4
Distinguish the practice and the critical blocks, as specified by column praccrit in the IATdata, or do not.
  1. "nodist" no distinction between practice and critical blocks. no distinction is made between practice and critical blocks and the IAT scores are computed using all trials together.
  2. "dist" compute the IAT scores as the average IAT score computed. the scores are computed on practice and critical blocks separately: the total score is then computedc as the average of the two IAT scores.

maxMemory
In computing the minidifferences, a very large dataframe is required. maxMemory specifies the maximum size of this dataframe, in MB. This limit is respected by "slicing" the dataset and computing the scores separately for many subsets of participants. This can slow the computation a bit, but prevents RAM overflows.
verbose
if TRUE, Print the time at which several operations are performed.

Value

subject
The identifier of the participant
.
p1342
The IAT scores. Each number after the p indicates the value of the parameter corresponding to the position. For instance p1342 indicates that parameter P1 has value 1 (i.e. "none"), parameter P2 has value 3, i.e., recode, parameter P3 has value 4 (i.e., "minid") and parameter P4 has value 2 (i.e. "dist"). This naming convention was adopted to allow to immediately and precisely know what has been done by reading the name of the score.
...
other columns in the form pxxxx.

Details

The procedure for computing the scores is the following.
  1. First parameter P4 is applied: for "nodist" the whole dataset is given as input, for "dist" the dataset is first split in two parts according to column praccrit and then given in input.
  2. Second, the parameter P1 and P2 are applied: correct and error latencies are treated for each combinations of P1 and P2 and a new column is internally created.
  3. Third, parameter P3 is applied. On each and every vector of latencies defined by a combination of P1 and P2, the IAT scores are computed using all the methods specified in P3.
  4. Finally, for P4 = "dist", the scores computed i the practice and critical blocks are averaged.

References

Greenwald, A. G., Nosek, B. A., & Banaji, M. R. (2003). Understanding and using the Implicit Association Test: I. An improved scoring algorithm. Journal of Personality and Social Psychology, 85(2), 197-216. doi:10.1037/0022-3514.85.2.197 Nosek, B. A., Bar-Anan, Y., Sriram, N., & Greenwald, A. G. (2013). Understanding and Using the Brief Implicit Association Test: I. Recommended Scoring Procedures. SSRN Electronic Journal. doi:10.2139/ssrn.2196002 Richetin, J., Costantini, G., Perugini, M., Schonbrodt, F. (in press). Should we stop looking for a better scoring algorithm for handling Implicit Association Test data? Test of the role of errors, extreme latencies treatment, scoring formula, and practice trials on reliability and validity. PLOS ONE.

See Also

SplitHalf, alg2param