Стандартизированные бета-версии для данных панели в R - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть набор данных панели, и я использую фиксированную регрессию эффектов. Моя зависимая переменная - CDS Spreads, и у меня есть 7 независимых переменных, которые являются макроэкономическими c переменными (ВВП, инфляция и т. Д. c), а затем у меня есть данные рейтингов для трех агентств, которые являются восьмой независимой переменной, поэтому я в основном управляю тремя отдельными регрессии для каждого рейтингового агентства:

plm(CDS ~ GDP+Inflation+...+S&PRating, data, model="within")



plm(CDS ~ GDP+Inflation+...+FTSE, data, model="within") 



plm(CDS ~ GDP+Inflation+...+Moodys, data, model="within")

Я хочу сравнить разницу в величине влияния трех агентств на спреды CDS, а также в сравнении с остальными независимыми переменными, но шкалой рейтинга по трем агентствам отличается. Я хочу стандартизировать коэффициенты. Как мне это сделать для панели данных. «lm.beta» из пакета «QuantPsy c» не дает точных результатов. Он меняет знаки коэффициентов, и в более ранней публикации предполагалось, что не рекомендуется использовать z-преобразование для панельных данных. Можете ли вы предложить способ сделать значимое сравнение с результатами?

Спасибо!

1 Ответ

0 голосов
/ 20 апреля 2020

Если вы запустите три разных регрессии, вы не сможете формально проверить различия в коэффициентах. Это может быть более информативным для:

  1. Стандартизировать оценки (стандартная норма может быть хорошим началом, здесь немного больше информации https://datascience.stackexchange.com/questions/1240/methods-for-standardizing-normalizing-different-rank-scales)
  2. Stack your данные, так что каждое наблюдение появляется три раза. Оценка будет в той же переменной.
  3. Создайте 3 новые переменные, где вы будете взаимодействовать с фиктивным индикатором агентства оценки. Ваши данные будут выглядеть так:
    rbind(
    data.frame(iso3 = "USA", year = 2001, gdp = 13, score_sp = 1, score_moody = 0, score_sfse = 0 ),
    data.frame(iso3 = "USA", year = 2001, gdp = 13, score_sp = 0, score_moody = 2, score_sfse = 0 ),
    data.frame(iso3 = "USA", year = 2001, gdp = 13, score_sp = 0, score_moody = 0, score_sfse = 3 )
    )

      iso3 year gdp score_sp score_moody score_sfse
    1  USA 2001  13        1           0          0
    2  USA 2001  13        0           2          0
    3  USA 2001  13        0           0          3

Оцените вашу модель:
    plm(CDS ~ GDP+Inflation+...+ score_sp + score_moody + score_ftse, data, model="within")

Теперь вы можете просто сравнить коэффициенты с t-тестами.

Если вы хотите увидеть, как изменяются коэффициенты в «контрольных» переменных когда вы используете другую оценку, ваши данные будут выглядеть так:

  iso3 year score_sp score_moody score_sfse gdp_sp gdp_moody gdp_sfse
1  USA 2001        1           0          0     13         0        0
2  USA 2001        0           2          0      0        13        0
3  USA 2001        0           0          3      0         0       13

Теперь вы можете использовать t-тест, чтобы проверить, больше ли коэффициент на ВВП при использовании одной конкретной оценки (если это то, что вы заинтересованы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...