service navigation

EASP – European Association of Social Psychology

R software users: Information about bug in rcicr package

10.09.2026, by Media Account

Important information regarding a bug in rcicr package - R software

 Hello,

I wrote rcicr, an R package for reverse-correlation image classification used across social and personality psychology to visualize mental representations: trustworthiness, stereotypes, group perception and similar work. I have just fixed a bug in it that may have mislabelled individual participant classification images. Please forward this to anyone whose work, or whose students' work, it might concern.

If a published or unpublished result of yours relies on per-participant classification images from rcicr, it needs checking. A null result from an affected analysis may be an artifact of the bug, and a significant result cannot be relied on until the affected analysis is re-run.

The bug: generateCI(), called with participants = ... and save_individual_cis = TRUE, could save each participant's classification image under a different participant's filename. The images themselves were computed correctly; only the file names were wrong. CRAN releases were unaffected. From the bug's introduction until CRAN archived rcicr on 2021-06-08, install.packages('rcicr') installed CRAN's last release, 0.3.4.1, which predates the bug. After that, the ordinary command failed rather than installing an affected version, and GitHub became the normal route. The affected GitHub-only code was in 0.4.0 installs from 2017-08-15 and versions 0.4.1 through 1.2.3; fixed in 1.3.0.

Most are probably unaffected. Nothing here applies to a CRAN install or to batchGenerateCI(), batchGenerateCI2IFC() or generateCI2IFC(), the routes most tutorials recommend. Otherwise, the check below settles the question from your participant IDs and how they sort.

If the images were made with one of those GitHub versions, whether they are affected comes down to two things:

Look for an individual_cis/ directory in your output folder. Only a direct generateCI() call creates this directory, so finding it means that route was used. The batch functions never create it. The group classification image returned directly by generateCI() is unaffected. A later condition- or group-level image assembled from the individual files can be affected if the filename shuffle crosses those groups. Not finding the directory clears you only if your files are still where the analysis left them; the advisory covers archived or moved output.

Check whether your participant IDs were already in sorted order. Using the participant vector in the order you originally passed it:

identical(unique(participants), sort(unique(participants)))
FALSE means an affected run swapped the filenames. No recomputing is needed; exact, safe renaming code is in the advisory. TRUEclears them only if you use the original participant vector on the computer that made the files; the advisory explains those caveats.

The advisory gives version details, caveats on both checks, and simulations of the analytical impact.

https://rdotsch.github.io/rcicr/articles/rcicr-individual-ci-advisory.html

If affected, this may mean unwelcome work or uncertainty. I fixed the bug, documented how to check past work, and am contacting researchers who may be affected.

I left the field in 2017 and no longer maintain rcicr; I would gladly hand it to anyone still active who wants it. Write if anything is unclear and I will help where I can, though I cannot advise on individual reanalyses.

Best,
Ron Dotsch
rdotsch@gmail.com