ОБНОВИТЬ:
Я решил первую часть проблемы. Я создал уникальные идентификаторы для каждого наблюдения:
идентификатор поколения = _n
Затем я использовал
идентификатор заполнения
который по существу создал то, что я искал.
Однако для остальных переменных (кроме id и categ) почти все наблюдения отсутствуют. Теперь мне нужна ваша помощь, чтобы продублировать остальные переменные вместо того, чтобы их не было. Например, каждое наблюдение связано с определенной неделей. Мне не хватает большинства из них. Или другая фиктивная переменная указывает, была ли покупка совершена в аптеке или продуктовом магазине. Большинство из них тоже отсутствуют.
Спасибо!
ОРИГИНАЛ СООБЩЕНИЯ:
Нужна ваша помощь в Stata!
Каждое наблюдение в моей базе данных — это покупка 1 единицы пивного продукта, сделанная покупателем. Эти покупки продуктов подразделяются на 8 общих категорий, так что переменная «categ» имеет значения от 1 до 8 (1 = импорт, 2 = крафт, 3 = премиум, 4 = легкий и т. д.). Для моей полиномиальной логит-модели мне нужно наблюдать за всеми категориями, купленными или не купленными покупателем в каждом наблюдении.
Предположим, это мой исходный набор данных:
идентификатор клиента ------- категория пива ----- купленные единицы
----------1------------------1--------------------- 1
----------2----------------- 3--------------------- 1
----------3 -----------------2 ---------------------1
Это то, что я ищу:
идентификатор клиента ------- категория пива ----- купленные единицы
----------1------------------1--------------------- 1
----------1 -----------------2 ---------------------0
----------1----------------- 3--------------------- 0
----------2----------------- 1--------------------- 0
----------2----------------- 3--------------------- 1
----------2 -----------------3--------------------- 0
----------3----------------- 1--------------------- 0
----------3----------------- 2--------------------- 0
----------3 -----------------2 ---------------------1
В настоящее время мой набор данных составляет 600 000 наблюдений. После этой процедуры у меня должно быть 600 000*8=4 800 000 наб.
При построении этого кода необходимо, чтобы все остальные переменные в наборе данных были продублированы в соответствии с соответствующей категорией пива.
Я предполагаю, что «заполнение» и менее вероятное «расширение» могут сработать.
Вы поможете очень поможет. Спасибо!