Зачем конвертировать числа в факторы при построении модели - PullRequest
0 голосов
/ 05 мая 2018

Я следовал учебному пособию по построению модели с использованием логистической регрессии. В учебнике столбцы с числовым типом данных и уровнями 3 были преобразованы в коэффициенты с использованием функции as.factor. Я хотел знать причину этого преобразования.

1 Ответ

0 голосов
/ 05 мая 2018

Если в этой форме оставить векторы класса «числовые» с небольшим количеством уникальных значений, логистическая регрессия, т.е. glm( form, family="binomial", ...), вернет один коэффициент. Как правило, это не то, что будут поддерживать данные, поэтому авторы этого руководства рекомендуют преобразовать эти векторы в факторы, чтобы иметь возможность обработки категориальных значений по умолчанию с помощью функции glm. Возможно, что эти авторы уже знают наверняка, что базовый процесс сбора данных закодировал категориальные данные с числовыми уровнями, и процесс ввода данных не был «сказан» для обработки как категориальный. Это можно было бы сделать, используя параметр colClasses для любой функции read.*.

Обработка факторов по умолчанию большинством подпрограмм регрессии R использует первый уровень как часть базовой оценки (Intercept) и оценивает коэффициент для каждого из других уровней. Если бы вы оставили этот вектор как числовой, вы бы получили оценку, которую можно было бы интерпретировать как наклон эффекта порядковой переменной. Статистические тесты, связанные с таким кодированием порядковых отношений, часто называют «линейным тестом тренда» и иногда являются полезным результатом, когда ситуацию с данными в «реальном мире» можно интерпретировать как порядковые отношения.

...