Методология опросов

Как обработать результаты анкетирования для научной статьи или диплома

Опрос — самый частый способ собрать собственные данные для курсовой, ВКР или диссертации. И самое частое место, где работа теряет баллы, — не сбор анкет, а их обработка: порядковую шкалу считают как числа, не проверяют надёжность, обобщают опрос одной группы на «всех студентов». Ниже — корректный порядок анализа: от типа шкалы до выводов, которые выдержат вопросы на защите.

Хорошая новость: чтобы обработать анкету корректно, не нужен сложный аппарат. Нужен правильный порядок действий и понимание, какая статистика допустима для ваших данных. Разберём его по шагам — с кодом на Python, который легко повторить в бесплатных инструментах (Python, R, Jamovi), без платных лицензий.

Главное: прежде чем считать средние и корреляции, определите тип каждой шкалы — от этого зависит, какая статистика вообще допустима. Большинство ошибок в студенческих опросах — это «среднее» и корреляция Пирсона там, где нужны медиана и Спирмен.

Сначала — тип шкалы измерения

Любой анализ начинается с вопроса: что за число перед нами. Стандартная классификация уровней измерения1 различает четыре типа шкал:

  • Номинальная — категории без порядка (пол, факультет, город). Корректны только частоты, мода и таблицы сопряжённости.
  • Порядковая — порядок есть, но «расстояния» между значениями не равны («плохо / удовлетворительно / хорошо / отлично»; согласие от «полностью не согласен» до «полностью согласен»). Корректны медиана, мода и ранговые методы.
  • Интервальная и шкала отношений — равные интервалы (баллы теста, возраст, доход). Допустимы среднее, стандартное отклонение и параметрические тесты.

Проблемы начинаются, когда порядковую шкалу молча превращают в интервальную: кодируют ответы числами 1–5 и считают среднее так, будто разница между «1» и «2» равна разнице между «4» и «5». Формально посчитать можно — но содержательно такое среднее трудно истолковать, и на защите это законный повод для вопроса.

Шкала Лайкерта: один пункт — это ещё не шкала

Самый частый инструмент опроса — шкала Лайкерта2: утверждение и градации согласия (обычно пять — от «полностью не согласен» до «полностью согласен»). Здесь критично различать3 два разных объекта:

  • Отдельный пункт (Likert item) — одно утверждение. Это порядковая шкала, и среднее по нему методологически спорно4: «средний балл 3.4» между «нейтрально» и «скорее согласен» трудно осмысленно истолковать. Корректнее — медиана, мода и распределение по категориям.
  • Суммарная шкала (Likert scale) — сумма или среднее нескольких пунктов, измеряющих один конструкт (например, «удовлетворённость курсом» из шести утверждений). Такую шкалу при достаточной надёжности и одномерности многие исследователи анализируют как квазиинтервальную5 — со средними и t-тестом/ANOVA.

На практике6 компромисс такой: для отдельных пунктов берут медианы и непараметрические методы, а средние и параметрику допускают для валидированных суммарных шкал из нескольких пунктов. Практический вывод прост: не считайте «среднее по вопросу анкеты», если это один пункт; считайте среднее по шкале — и только проверив её надёжность.

Показывать ответы по отдельным пунктам удобнее всего не «средним» и не круговой диаграммой, а диаграммой с расхождением (diverging stacked bar):

60% 40% 20% 0% 20% 40% 60% 80% Материал понятен Нагрузка посильна Обратная связь вовремя Платформа удобна Рекомендую курс ← не согласны · согласны → Совершенно не согласен Скорее не согласен Нейтрально Скорее согласен Совершенно согласен
Рис. 1. Диаграмма Лайкерта с расхождением — правильный способ показать ответы. Категории «не согласен» уходят влево от центра, «согласен» — вправо, нейтральные делятся пополам. Сразу видно баланс мнений по каждому пункту: например, «обратная связь вовремя» перевешивает влево (проблемная зона). Это честнее, чем одно «среднее по шкале» или круговая диаграмма. Условные данные · для наглядности.

Надёжность шкалы: альфа Кронбаха и её ловушки

Если вы свернули несколько пунктов в одну шкалу, нужно показать, что они действительно измеряют одно и то же. Стандартный показатель внутренней согласованности — альфа Кронбаха7. Грубый ориентир9: α ≥ 0.7 считают приемлемым, ≥ 0.8 — хорошим (пороги условны и зависят от задачи). Посчитать её можно в несколько строк:

import pandas as pd

def cronbach_alpha(items):
    # items: строки — респонденты, столбцы — пункты одной шкалы (числа 1..5)
    k = items.shape[1]
    var_sum = items.var(axis=0, ddof=1).sum()    # сумма дисперсий пунктов
    var_total = items.sum(axis=1).var(ddof=1)   # дисперсия суммарного балла
    return (k / (k - 1)) * (1 - var_sum / var_total)

alpha = cronbach_alpha(df[["q1", "q2", "q3", "q4", "q5", "q6"]])
print(f"Альфа Кронбаха: {alpha:.2f}")               # напр. 0.83 — приемлемо

У α есть важная ловушка8: она растёт не только с качеством пунктов, но и просто с их количеством. Достаточно набрать побольше слабо связанных утверждений — и формальный порог будет «взят»:

0.0 0.2 0.4 0.6 0.8 1.0 2 4 6 8 10 12 14 16 18 20 порог приемлемости α = 0.70 Ср. корреляция между пунктами r̄: 0.5 0.3 0.2 0.1 Даже слабые пункты (r̄=0.2) дают α>0.7, если пунктов много. число пунктов шкалы (k) альфа Кронбаха (α)
Рис. 2. Почему высокая альфа Кронбаха ещё не значит «хорошая шкала». α растёт и с качеством пунктов (средняя корреляция между ними r̄), и просто с их числом k. Даже слабо связанные пункты (r̄ = 0.2) превышают порог 0.70, если их набрать достаточно много — значит, высокая α сама по себе ещё не доказывает качество шкалы. Формула Спирмена–Брауна α = k·r̄ / (1 + (k−1)·r̄).

Поэтому α всегда сообщают вместе с числом пунктов, а как более корректную альтернативу всё чаще используют омегу Макдональда10, которая не требует предположения о равном вкладе пунктов. И ни α, ни ω сами по себе не доказывают, что шкала одномерна, — для этого нужен факторный анализ.

Сколько респондентов нужно

Второй вечный вопрос — сколько анкет собрать. Для оценки доли (например, «какой процент студентов пользуется сервисом») размер выборки задаётся требуемой точностью: n = z² · p(1−p) / e², где e — допустимая погрешность, а p = 0.5 берут как худший случай. Готовые ориентиры дают и широко цитируемые таблицы размера выборки11.

±0% ±3% ±6% ±9% ±12% ±15% ±18% 30 50 100 200 400 1000 2000 n=100: ±9.8% n=400: ±4.9% n=1000: ±3.1% Доля p = 50% (худший случай — макс. погрешность), 95% доверие. После ~400 каждый новый респондент даёт всё меньше. число респондентов n (log) предельная ошибка (95% ДИ)
Рис. 3. Сколько респондентов нужно. Предельная ошибка оценки доли (ширина 95% доверительного интервала) убывает как 1/√n: при 100 ответах — около ±10%, при 400 — ±5%, при 1000 — ±3%. После нескольких сотен каждый новый респондент уточняет оценку всё слабее. Важно: это работает только для случайной выборки — на «опросе среди одногруппников» обобщать на генеральную совокупность нельзя. Расчёт для доли p = 50% (худший случай) · 95% доверие.

Но размер — это лишь половина дела, и не главная. Ключевое ограничение студенческих опросов — способ отбора. Если вы опросили одногруппников, знакомых или подписчиков своего паблика, это удобная (неслучайная) выборка: по ней нельзя обобщать на «всех студентов» — какой бы большой она ни была. Честная работа прямо оговаривает это ограничение в выводах, а не выдаёт удобную выборку за репрезентативную. Это не слабость диплома, а признак методологической грамотности.

Связи между переменными: какой метод выбрать

Когда нужно проверить связь двух переменных, метод выбирают по их типам (подробный разбор — в статье о выборе статистического теста):

  • Две номинальные — таблица сопряжённости и критерий χ²; силу связи показывает коэффициент Крамера V13 (значимость χ² сама по себе силу связи не измеряет).
  • Две порядковые (две лайкертовские) — ранговая корреляция Спирмена12, а не Пирсона: Пирсон предполагает интервальную шкалу и линейность.
  • Порядковая по группам — критерий Манна–Уитни (две группы) или Краскела–Уоллиса (несколько групп).
import numpy as np
import pandas as pd
from scipy.stats import chi2_contingency

# таблица сопряжённости двух номинальных переменных
table = pd.crosstab(df["факультет"], df["пользуется_сервисом"])
chi2, p, dof, _ = chi2_contingency(table)

n = table.values.sum()
k = min(table.shape)                  # min(строк, столбцов)
cramers_v = np.sqrt(chi2 / (n * (k - 1)))

print(f"χ² = {chi2:.1f}, p = {p:.3f}")
print(f"Крамера V = {cramers_v:.2f}")    # 0.1 слабая · 0.3 средняя · 0.5 сильная

И всегда сообщайте не только p-значение, но и размер эффекта. На большой выборке «статистически значимая» связь может быть практически ничтожной — значимость отвечает на вопрос «есть ли связь вообще», а размер эффекта — «насколько она велика».

Типичные ошибки

  • Среднее по одному пункту Лайкерта. Отдельный пункт порядковый — берите медиану, моду и распределение по категориям.
  • Пирсон вместо Спирмена. Для порядковых данных корреляция Пирсона некорректна — нужна ранговая.
  • Нет проверки надёжности. Свернули пункты в шкалу — приведите α (а лучше и ω) и обоснуйте одномерность.
  • Обобщение с удобной выборки. Опрос знакомых нельзя распространять на генеральную совокупность; оговорите границы.
  • «p < 0.05 значит важно». Значимость — не размер эффекта; на большой n значимо почти всё.
  • Перебор корреляций. Матрица из 30 переменных даст «значимые» связи случайно — нужна поправка на множественность.
  • Круговые диаграммы для Лайкерта. Используйте диаграмму с расхождением или частотную таблицу.

Чек-лист перед сдачей

  • Для каждой переменной определён тип шкалы.
  • Для шкал из нескольких пунктов посчитана надёжность (α или ω).
  • Описательные статистики соответствуют типу шкалы: медиана — для порядковых, среднее — для интервальных.
  • Метод проверки связей выбран по типам переменных; приведён размер эффекта, а не только p-значение.
  • Оговорены способ отбора респондентов и границы обобщения выводов.
  • Данные и расчёт воспроизводимы: таблица данных плюс код или пошаговое описание.

Как с этим помогает StatGazer

Мы помогаем студентам, аспирантам и исследователям разобраться с методологией опроса — а не «сдать работу за вас». Подбираем корректные методы под ваши данные, проверяем уже сделанный анализ и объясняем, почему именно так, чтобы вы уверенно отвечали на вопросы на защите. Это можно сделать форматом разовой консультации или индивидуальных занятий; смежная тема выбора теста под тип данных разобрана в статье о статобработке для диссертации. Опишите задачу в контактах — ответим в течение 24 часов.

Источники

Ключевые работы по уровням измерения, шкалам Лайкерта, надёжности и размеру выборки, упомянутые в статье. Номера-сноски в тексте ссылаются на этот список.

  1. Stevens, S. S. (1946). On the Theory of Scales of Measurement. Science, 103(2684), 677–680. doi:10.1126/science.103.2684.677. — вводит уровни измерения (номинальный, порядковый, интервальный, шкала отношений) — основа выбора корректных методов.
  2. Likert, R. (1932). A Technique for the Measurement of Attitudes. Archives of Psychology, 140, 1–55. psycnet.apa.org. — первоисточник шкалы Лайкерта — метод суммированных оценок для измерения установок.
  3. Carifio, J., & Perla, R. J. (2007). Ten Common Misunderstandings, Misconceptions, Persistent Myths and Urban Legends about Likert Scales and Likert Response Formats and Their Antidotes. Journal of Social Sciences, 3(3), 106–116. doi:10.3844/jssp.2007.106.116. — разбирает заблуждения о шкалах Лайкерта, в т.ч. различие отдельного пункта и суммарной шкалы.
  4. Jamieson, S. (2004). Likert scales: how to (ab)use them. Medical Education, 38(12), 1217–1218. doi:10.1111/j.1365-2929.2004.02012.x. — предостережение: пункт Лайкерта порядковый, поэтому среднее по нему методологически сомнительно.
  5. Norman, G. (2010). Likert scales, levels of measurement and the “laws” of statistics. Advances in Health Sciences Education, 15(5), 625–632. doi:10.1007/s10459-010-9222-y. — аргумент в пользу устойчивости параметрических методов к нарушениям на лайкертовских данных.
  6. Sullivan, G. M., & Artino, A. R. (2013). Analyzing and Interpreting Data From Likert-Type Scales. Journal of Graduate Medical Education, 5(4), 541–542. doi:10.4300/JGME-5-4-18. — практическое руководство: медианы/непараметрика для пунктов, средние/параметрика — для надёжных суммарных шкал.
  7. Cronbach, L. J. (1951). Coefficient alpha and the internal structure of tests. Psychometrika, 16(3), 297–334. doi:10.1007/BF02310555. — вводит альфу как меру внутренней согласованности (надёжности) шкалы.
  8. Tavakol, M., & Dennick, R. (2011). Making sense of Cronbach's alpha. International Journal of Medical Education, 2, 53–55. doi:10.5116/ijme.4dfb.8dfd. — практическая интерпретация альфы и её ограничения, включая зависимость от числа пунктов.
  9. Nunnally, J. C., & Bernstein, I. H. (1994). Psychometric Theory (3rd ed.). New York: McGraw-Hill. worldcat.org. — классический учебник психометрики; ориентиры порогов надёжности и концепции валидности.
  10. McDonald, R. P. (1999). Test Theory: A Unified Treatment. Mahwah, NJ: Lawrence Erlbaum Associates. doi:10.4324/9781410601087. — вводит омегу как альтернативу альфе для оценки надёжности шкалы.
  11. Krejcie, R. V., & Morgan, D. W. (1970). Determining Sample Size for Research Activities. Educational and Psychological Measurement, 30(3), 607–610. doi:10.1177/001316447003000308. — широко цитируемые таблицы размера выборки для заданной точности.
  12. Spearman, C. (1904). The Proof and Measurement of Association between Two Things. The American Journal of Psychology, 15(1), 72–101. doi:10.2307/1412159. — ранговая корреляция Спирмена для оценки монотонной связи порядковых данных.
  13. Cramér, H. (1946). Mathematical Methods of Statistics. Princeton, NJ: Princeton University Press. archive.org. — первоисточник коэффициента Крамера V — размера эффекта для таблиц сопряжённости (хи-квадрат).

Нужна не статья, а разбор?

Опишите задачу.
Ответим в течение 24 часов.

Помогаем с методологией опроса и анализа, проверяем расчёты и готовим к защите — для студентов, аспирантов и исследователей.

NDA до передачи данных · границы работ, KPI и сроки фиксируются до старта · hello@statgazer.ru