Создание категориальных переменных из взаимоисключающих фиктивных переменных

Мой вопрос касается разработки ранее отвеченного вопроса ообъединение нескольких фиктивных переменных в одну категориальную переменную.

В ранее заданном вопросе категориальная переменная была создана из фиктивных переменных, которые НЕ были взаимоисключающими. Для моего случая, мои фиктивные переменные являются взаимоисключающими, потому что они представляют пересеченные экспериментальные условия в факториальном дизайне 2X2 между субъектами (который также имеет компонент внутри предметов, который яя не обращаюсь сюда), поэтому я недумаюinteraction делает то, что мне нужно сделать.

Например, мои данные могут выглядеть так:

id   conditionA    conditionB    conditionC     conditionD
1    NA            1             NA             NA
2    1             NA            NA             NA
3    NA            NA            1              NA
4    NA            NA            NA             1
5    NA            2             NA             NA
6    2             NA            NA             NA
7    NA            NA            2              NA
8    NA            NA            NA             2

Я хотел бы сейчас сделать категориальные переменные, которые объединяют ПО разным типам условий. Например, люди, у которых были значения для условий A и B, могут быть закодированы одной категориальной переменной, а люди, у которых были значения для условий C и D.

id   conditionA    conditionB    conditionC     conditionD  factor1    factor2
1    NA            1             NA             NA          1          NA
2    1             NA            NA             NA          1          NA
3    NA            NA            1              NA          NA         1
4    NA            NA            NA             1           NA         1
5    NA            2             NA             NA          2          NA
6    2             NA            NA             NA          2          NA
7    NA            NA            2              NA          NA         2
8    NA            NA            NA             2           NA         2

Прямо сейчас яя делаю это, используяifelse() заявления, которые довольно просто горячий беспорядок (и нет всегда работает). Пожалуйста помоги! Там'Скорее всего, некоторые супер-очевидныепроще ".

РЕДАКТИРОВАТЬ:

Видыifelse Команды, которые я использую, следующие:

attach(df)
df$factor

Ответы на вопрос(3)

Ваш ответ на вопрос