Implicit measures with reproducible results: The implicitMeasures package

In the past few decades, there has been a growing interest in the possibility of assessing people’s attitudes, preferences, self-esteem, opinions, and other social-psychological constructs, without directly asking them. This was made possible by the advent of what are called implicit measures. Implicit measures are generally based on the speed and accuracy with which respondents perform the same categorization task in contrasting conditions. The assumption underlying their functioning is that respondents’ performance will be faster and more accurate in the condition that is consistent with their attitudes, opinions, or preferences. The construct of interest is inferred from the difference in the response times between the associative conditions.


Statement of need
In the past few decades, there has been a growing interest in the possibility of assessing people's attitudes, preferences, self-esteem, opinions, and other social-psychological constructs, without directly asking them. This was made possible by the advent of what are called implicit measures. Implicit measures are generally based on the speed and accuracy with which respondents perform the same categorization task in contrasting conditions. The assumption underlying their functioning is that respondents' performance will be faster and more accurate in the condition that is consistent with their attitudes, opinions, or preferences. The construct of interest is inferred from the difference in the response times between the associative conditions. Among implicit measures, the Implicit Association Test (IAT; Greenwald, McGhee, & Schwartz, 1998) and the Single Category IAT (SC-IAT; Karpinski & Steinman, 2006) are the mostly common used ones (Ottavia M Epifania et al., 2020b). Both tests result in a differential score (the so-called D-score) expressing respondents' bias in performing the categorization task between conditions. While the scoring of the SC-IAT is based on one single algorithm (Karpinski & Steinman, 2006), six different algorithms are available for computing the IAT D-score (Greenwald, Nosek, & Banaji, 2003). The core procedure for the computation of the IAT D-score is the same for all the algorithms, which differentiate themselves according to their treatment for extreme fast responses and for the replacement of error responses.
Although many R packages exist for computing IAT D-score algorithms, no packages exist for scoring the SC-IAT. Additionally, the majority of existing R packages created for the computation of IAT D-score algorithms do not provide all the available algorithms. The packages that allow for the computation of multiple D-score algorithms either do not offer the chance to compare their results, or do not disambiguate which specific algorithm they are computing, raising reproducibility issues (Ellithorpe, Ewoldsen, & Velez, 2015).
Recently, a Web Application was developed with shiny package (Chang, Cheng, Allaire, Xie, & McPherson, 2020) for computing the IAT D-score (i.e., DscoreApp; Epifania, Anselmi, & Robusto, 2019). This app provides an intuitive and easy to use User Interface. By giving a detailed explanation of the D-score algorithms that can be computed, DscoreApp addresses the majority of the above mentioned replicability issues. Moreover, the graphical representation of the results can give an immediate glimpse of the general performance of the respondents. However, DscoreApp presents some shortcomings as well. Firstly, since it is a shiny app, it is associated with the most significant outstanding issue of shiny apps, namely, the replicability of the code, and hence of the results. Specifically, by putting the code into the shiny interface, it is impossible to call it from the command line, and this point is crucial for replication and automation. However, Epifania et al. (2019) used a GitHub repository to let the public access the code used for the computation. Despite the fact that the graphical representations of the results provided by DscoreApp are really useful for getting a first idea of the IAT results and that they are all downloadable in a .pdf format, they cannot be further customized by the users. Moreover, DscoreApp computes the D-score only for the IAT.
implicitMeasures package is an R package aimed at overcoming both the shortcomings of the existing R packages for the computation of the IAT D-score and those of the shiny app DscoreApp. implicitMeasures provides an easy and open source way to clean and score both the IAT and the SC-IAT, to easily compare different IAT D-score algorithms, and to provide clear and customizable plots. Plot functions are all based on ggplot2 (Wickham, 2016).

Package overview
The released version of implicitMeasures can be installed from CRAN:

install.packages("implicitMeasures")
while the development version can be installed from GitHub:

# install.packages("devtools") # un-comment to install devtools devtools::install_github("OttaviaE/implicitMeasures")
The packages on which implicitMeasures depends are listed in the DESCRIPTION file. If they are not already installed, they will be installed when implicitMeasures package is installed.
implicitMeasures contains the following functions: implicitMeasures contains three vignettes, namely "implicitMeasures", "IAT-example", and "SC-IAT-example". Vignette "implicitMeasures" contains information regarding both the IAT and the SC-IAT, the computation of their respective scoring algorithms, as well as an explanation of the dataset (i.e., raw_data) included in the package. Vignettes "IAT-example" and "SC-IAT-example" provide examples on how to use the package functions for computing the IAT and SC-IAT D-score, respectively, for plotting their results, and for obtaining descriptive tables of the results. In the IAT case, an illustration of how to use the function for computing multiple D-score algorithms concurrently, as well as for plotting their results, is provided. In the SC-IAT case, also an example of how to use the package for plotting multiple SC-IATs scores in one graph is provided.