У меня есть неуравновешенная панель с тремя идентификаторами (дата, компания и человек), для которых я хочу рассчитать скользящее средство для моей переменной (price
) за предыдущие 90 дней для каждой компании и Дата. Когда я назначаю панель tsset
, я получаю сообщение об ошибке repeated time values within panel
. Поскольку каждый человек в моей группе принадлежит нескольким компаниям, у меня есть несколько пар компаний для каждой даты. Вот мой код до сих пор:Подсказка для панели с 3 идентификаторами в Stata
tsset company_id date_id
tsegen Mean_90days = rowmean(L(0/90).price)
Есть ли способ, как сделать такой расчет?
Мое решение было создание company_person_id
с помощью group(company_id person_id)
, чтобы вычислить означает для каждого company_person_id date
наблюдения и использовать в виду egen=mean()
агрегировать by (company_id date_id)
. Однако я все еще не уверен, насколько это правдоподобно.
Ваше двухэтапное решение кажется звуковым, потому что путь означает работу, но есть более прямой маршрут: см. Мой ответ. –
На самом деле, работа вокруг была бы проблематичной, если бы вы не учли тот факт, что разные средства (пары компаний, человека) могут основываться на разных количествах измерений. Правильное обходное отношение было бы взвешенным средним значением. –
Да, вы правы @ Ник Кокс - взвешенное среднее лучше в моем случае. – In777