Автоматическая проверка правильности p-значений в статьях

Неделю назад в журнале Behavior Research Methods появилась интересная статья (http://link.springer.com/article/10.3758/s13428−015−0664−2/fulltext.html), в которой авторы описывают новый пакет для R, позволяющий автоматически проверять правильность расчета p-значений.

По сути все очень просто — программа анализирует текст статьи (который при необходимости переводится из PDF или html в txt), и выделяет из него с помощью регулярных выражений () текст, соответствующий стандартному APA-описанию статистики. Например, для t-теста ищется паттерн наподобие t (DF) = X, p = Y (с учетом возможного появления пробелов, знака < после p и разных форматов чисел). После чего для указанных DF и X пересчитывается Y и сравнивается с указанным в статье.

Сравнение с результатами проверки вручную показали, что пакет неплохо справляется, хотя ожидаемо пропускает тесты в таблицах, иногда не справляется с односторонними тестами, не понимает неформатные записи, и не всегда ловит поправки на множественные сравнения. Тем не менее, порядка 70% результатов корректно вылавливаются и общий процент рассогласований между подсчитанным p и p, описанным в статье, составляет 4.3% при ручном подсчете и 5.8% при автоматическом. То есть в общем и целом если уж выловил, то проверит скорее правильно.

С помощью этого пакета товарищи проверили 30 717 статей, из них p-значения встречались в 16 695 статьях. Анализировались два типа расхождений — незначительные (p > .05 или < .05 и таковым и остается при пересчете) и грубые (p < .05, но становится незначимым при пересчете, или наоборот).

Основные результаты анализа таковы. Хотя бы одна грубая ошибка при расчете p встречается в 13% статей, а на одну статью в среднем приходится 1.6% грубых ошибок. При этом важный позитивный момент — доля грубых ошибок с годами снижается. Причем как показывает рисунок ниже снижается она в основном за счет уменьшения доли грубых ошибок среди значимых результатов, то есть уменьшается число ошибочно значимых находок. Интересно также, что особых различий между журналами в различных областях нет, так что нельзя сказать, что социальные психологи чаще клинических или общих делают ошибки в подсчетах.

Было бы любопытно доработать этот пакет до автоматической проверки соответствия описания результатов стандартам. Тогда он мог бы стать таким базовым фильтром при публикации статей и помог бы еще больше улучшить качество публикаций. Ну и хорошо бы, чтобы его начали использовать в России и не только для статей, но и, например, для выпускных работ.

Рисунок 7 из Nuijten et al. (2015)
Рисунок 7 из Nuijten et al. (2015). Изменение доли грубых ошибок по годам среди значимых (верхняя линия) и незначимых (нижняя линия) результатов.