Графіки в дизайні переривання регресії в "Stata" або "R"


10

Лі та Лемео (с. 31, 2009) пропонують досліднику представити графіки, роблячи аналіз дизайну розриву регресії регресії (RDD). Вони пропонують таку процедуру:

"... для деякої пропускної здатності , а для деякої кількості бункерів та зліва і справа від значення відсікання відповідно ідея полягає у побудові бункерів ( b k , b k + 1 ], при k = 1 , . . . , до = до 0 + к 1 , де Ь до = з - ( K 0 - K + 1 ) год . "hK 1K0K1bkbk+1k=1,...,K=K0K1бк=c-(К0-к+1)год.

c=cutoff point or threshold value of assignment variable
h=bandwidth or window width.

... потім порівняйте середні результати лише зліва та справа від точки відсіку ... "

.. у всіх випадках ми також показуємо встановлені значення з кваркової моделі регресії, оцінені окремо з кожної сторони точки відсіку ...

Моє запитання полягає в тому, як ми запрограмуємо цю процедуру для Stataабо Rдля побудови графіків змінної результату на змінну присвоєння (з довірчими інтервалами) для різкого RDD. Зразок прикладу в Stataзгаданому тут і тут (замінити rd на rd_obs) та зразок Приклад в Rє тут . Однак я думаю, що обидва ці кроки не реалізували крок 1. Зауважте, що обидва мають необроблені дані разом із встановленими рядками на графіках.

Зразок графіка без змінної довіри [Lee and Lemieux, 2009] введіть тут опис зображення Дякую заздалегідь.


У відповідь на ваш прапор, хороший спосіб пожвавити своє запитання - це відредагувати його та запропонувати щедрість: це підкаже ваше запитання та зацікавить більше людей. Якщо ви вважаєте, що це питання може бути краще подано у програмі Stack Overflow, повідомте нас про це, і ми зможемо перенести це за вас.
chl

Я хотів би, щоб це було перенесено на Stack Overflow.
Метрики

1
На жаль, це запитання є занадто старим, щоб його можна було перенести на стек Overflow. Я вважаю, що він належить до Cross Valified, але якщо ви хочете задати питання про переповнення стека (наголосивши на аспекті програмування та надаючи мінімальний відтворюваний приклад ), дайте мені знати, і я закрию його тут.
chl

Вам слід використовувати cmogram . Він робить все необхідне.
Ян Сон

Відповіді:


10

Кi

use votex // the election-spending data that comes with rd

tw 
(scatter lne d, mcolor(gs10) msize(tiny)) 
(lpolyci lne d if d<0, bw(0.05) deg(2) n(100) fcolor(none)) 
(lpolyci lne d if d>=0, bw(0.05) deg(2) n(100) fcolor(none)), xline(0)  legend(off)

twowayхссеуллл

lpoly lne d if d<0, bw(0.05) deg(2) n(100) gen(x0 s0) ci se(se0)
lpoly lne d if d>=0, bw(0.05) deg(2) n(100) gen(x1 s1) ci se(se1)

/* Get the 95% CIs */
forvalues v=0/1 {
    gen ul`v' = s`v' + 1.95*se`v' 
    gen ll`v' = s`v' - 1.95*se`v' 
};

tw 
(line ul0 ll0 s0 x0, lcolor(blue blue blue) lpattern(dash dash solid)) 
(line ul1 ll1 s1 x1, lcolor(red red red) lpattern(dash dash solid)), legend(off)  

Як бачите, рядки в першому сюжеті такі ж, як у другому.


@Dimitry: +1 для рішення. Однак я хотів би мати середнє значення для кожного контейнера (будь ласка, запустіть статистичний приклад вище), а не графік розкидання, де відображаються вихідні значення. CI - це чудово.
Метрики

1
Я не зовсім впевнений, що ти маєш на увазі. Я додав закодований текст, який показує, як ви вручну отримуєте згладжений засіб у кожній відро. Якщо це не те, що ви шукаєте, поясніть, що ви маєте на увазі більш докладно. Наскільки я можу сказати, ці графіки зазвичай показують необроблені дані та згладжені засоби.
Мастеров Димитрій Вікторович

Цитуючи Лі та Лемео (стор. 31, 2009): "Стандартний спосіб графіки даних - це поділ змінної присвоєння (d тут) на кілька бункерів, переконуючись, що на кожній стороні відсікання є два окремі бункери. точка (щоб уникнути оброблених та необроблених спостережень, змішаних разом в одному контейнері). Тоді середнє значення змінної результату може бути обчислено для кожного контейнера та зібрано проти середніх точок бункерів ". Отже, якщо є 50 бункерів, у нас буде лише 25 точок даних ліворуч та праворуч, а не всі необгрунтовані дані (наприклад, Графік 6 (b) посилання: оновлений питання)
Показники

1
Тепер це зрозуміло! Я згоден на ядро. Але ви впевнені, що зараз це не ступінь 0? Це відповідало б однаково зваженому середньому згладжуванню.
Мастеров Димитрій Васильович

1
Я вважаю, що відповідає lpoly з регулярним ядром та поліномом 0 ступеня
Мастеров

7

Ось консервований алгоритм. Нещодавно Калоніко, Каттанео і Тітюнік запропонували процедуру вибору пропускної здатності. Вони реалізували свої теоретичні роботи як для Stata, так і для R , і це також є командою сюжету. Ось приклад в R:

# install.packages("rdrobust")
library(rdrobust)
set.seed(26950) # from random.org
x<-runif(1000,-1,1)
y<-5+3*x+2*(x>=0)+rnorm(1000)
rdplot(y,x)

Це дасть вам цей графік: введіть тут опис зображення


Привіт, як додати CI?
Кранц
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.