Построить новую переменную из 5 категориальных переменных в Stata

У меня есть 5 категориальных переменных результата. Я решил отбросить ответы "Не знаю", оставив только "Да / Нет", чтобы эти переменные были двоичными.

Чтобы иметь возможность выполнять регрессионный анализ, моя идея состояла в том, чтобы создать новую переменную результата, которая будет иметь категории Да / Нет, где ответ Да будет записан для ЛЮБОГО ответа Да из этих 5 переменных. Я не могу понять, как это сделать в Stata, какие команды использовать..

2 ответа

Первые три функции, которые вы получаете от help egen актуальны.

То, что вы, кажется, хотите, это:

egen any_x = anymatch(x1 x2 x3 x4 x5), v(1)

Возможно, вы захотите создать составной индикатор, хотя:

egen gx = group(x1 x2 x3 x4 x5), l

Это создаст более сложный результат (просто попробуйте). l Опция пометит результаты, вы поймете, что она делает без каких-либо затруднений. group Функция также имеет опцию для пропущенных значений, если вы заинтересованы в сохранении ваших NA/DK. Проверьте документацию и посмотрите, что подходит вашему проекту лучше всего. Трудно сказать без дальнейших подробностей или минимального рабочего примера.

Решение выше должно также работать, кстати.

Если ваши 5 переменных являются двоичными и содержат 0 или же 1

x1 x2 x3 x4 x5

тогда вы просто закодируете

x_any = x1 | x2 | x3 | x4 | x5

Если они содержат yes или же no тогда вы должны сначала перекодировать в новые переменные.

gen x1 = (x1_yesno == "yes")

Квадратные скобки не нужны, но они дают вам лучшее представление о том, что Sstata устанавливает x1 в логическое значение true (т.е. 1) только когда x1_yesno является yes,

Другие вопросы по тегам