{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "(activity13_solution)=\n", "\n", "# Activity 13 Solution: RDDs\n", "\n", "**2025-04-08**\n", "\n", "---" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import seaborn as sns\n", "import statsmodels.formula.api as smf" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "gov_transfers = pd.read_csv(\"~/COMSC-341CD/data/gov_transfers.csv\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The columns we have in the dataset are:\n", "\n", "- $R$ `Income_Centered`: the predicted income of the household, centered at 0\n", "- $T$ `Participation`: whether the household participated in the poverty alleviation program\n", "- $Y$ `Support`: the amount of goverment support, encoded as a survery question: \n", " - In relation to the previous government, do you believe that the current government is worse (0), the same (1/2), better (1)?\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Income_CenteredParticipationSupport
00.00657101.0
10.01107501.0
20.00242401.0
30.00765000.5
40.01000101.0
\n", "
" ], "text/plain": [ " Income_Centered Participation Support\n", "0 0.006571 0 1.0\n", "1 0.011075 0 1.0\n", "2 0.002424 0 1.0\n", "3 0.007650 0 0.5\n", "4 0.010001 0 1.0" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gov_transfers.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Part 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's first visualize how the treatment assignment is related to the income. Use [pd.cut](https://pandas.pydata.org/docs/reference/api/pandas.cut.html) with `bins=20` and `labels=False` to bin the income data into 20 bins:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Income_CenteredParticipationSupportincome_bin
00.00657101.013
10.01107501.015
20.00242401.011
30.00765000.513
40.01000101.015
\n", "
" ], "text/plain": [ " Income_Centered Participation Support income_bin\n", "0 0.006571 0 1.0 13\n", "1 0.011075 0 1.0 15\n", "2 0.002424 0 1.0 11\n", "3 0.007650 0 0.5 13\n", "4 0.010001 0 1.0 15" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# TODO your code here\n", "gov_transfers['income_bin'] = pd.cut(gov_transfers['Income_Centered'], bins=20, labels=False)\n", "gov_transfers.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, generate a `sns.pointplot` of `y=Participation` vs `x=income_bin`. Set `linestyle='none'` to plot the points individually. \n", "\n", "\n", "Discuss with folks around you: Do you observe any deviations from the policy of assigning participation in the transfer program based on income? Does this suggest that the RDD is \"sharp\" or not?\n", "\n", "**Your response:** [pollev.com/tliu](https://pollev.com/tliu)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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FMSzFoBJvP397VXQOeecc1RaWqrTp08rMjKyRug4ceLEr+6jsrJSkZGReuutt3TTTTe51g8fPlwnT57UqlWramwzaNAgnXvuuYqMjNSqVavUunVr3X777Ro/fnydN0FXVFSooqLC9bPdbldSUhJBBwCAJsTboOPVpatZs2Z5s5mb48ePq7q6WvHx8W7r4+PjtWfPnlq3+e6777R+/XrdcccdWrNmjfbt26cHHnhAVVVVys7OrnWbnJwcTZ48+azrBQAATY9XQWf48OG+rqNenE6n2rRpowULFig4OFg9e/bU999/r+nTp9cZdCZOnKisrCzXzz+N6AAwS2VlpaZOnSpJ+tOf/qTQ0FA/VwQgEHg9e3l1dbXeeecd1zXxzp07a8iQIfV+j05cXJyCg4NVVFTktr6oqEgJCQm1btO2bVuFhIS49dGxY0cVFhaqsrKy1n/YwsLCFBYWVt/DAtBEVVVVuUZvx40bR9ABIMnLFwbu27dPHTt2VGZmplauXKmVK1fqzjvvVOfOnfXtt9/Wax+hoaHq2bOncnNzXeucTqdyc3OVnp5e6zZ9+/bVvn375HQ6Xeu+/vprtW3bln/UAABADV4FnYceekgXX3yxDh06pG3btmnbtm0qKCjQhRdeqIceeqje+8nKytLLL7+s1157Tbt379b9998vh8OhkSNHSpIyMzM1ceJEV/v7779fJ06c0NixY/X1119r9erVmjp1qh588EFvDgMAABjOq0tXH330kT7//HOde+65rnXnnXeepk2bpr59+9Z7P7fddpuOHTumSZMmqbCwUN27d9fatWtdNygXFBS4PSKalJSk999/X4888oi6deum888/X2PHjtX48eO9OQwAAGA4r4JOWFiYSkpKaqw/deqUx5eQRo8erdGjR9f63caNG2usS09P1+eff+5RHwAAoHny6tLVDTfcoHvuuUebNm2SZVmyLEuff/657rvvPg0ZMsTXNQIAAHjFq6Dzl7/8RRdffLHS09MVHh6u8PBw9e3bVx06dNCLL77o6xoBAAC84tWlq1atWmnVqlX65ptvXC/369ixozp06ODT4gCgvsLDw7V582bXMgBIXk4B0ZQx1xUAAE1Pg08BkZWVpSlTpigqKsrtTcO1mTlzZr0LAAAAaCj1Djrbt29XVVWVaxkAAkllZaXrHsGxY8fyElEAkrh05e9yAPiI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AMYi6AAAAGMRdAAAgLEIOgAAwFgEHQAAYCyCDgCv9O/fXw8//LC/y2hQNptN77zzTp3fHzhwQDabTfn5+Y1WEwDPNIvZywH43sqVKxUSEuLvMvwqKSlJR44cUVxcnL9LAVAHgg4Ar5x77rn+LsHvgoODlZCQ4O8yAJwBl64AeOXnl67at2+vqVOn6u6771bLli3Vrl07LViwwK39v/71Lw0bNkznnnuuoqKilJqaqk2bNrm+nzt3ri6++GKFhobq0ksv1d/+9je37W02m+bPn68bbrhBkZGR6tixo/Ly8rRv3z71799fUVFR6tOnj7799lu37VatWqXLL79c4eHhuuiiizR58mSdPn263sd55MgRXX/99YqIiNBFF12kt956y/XdLy9dbdy4UTabTbm5uUpNTVVkZKT69OmjvXv31rs/AL5F0AHgEzNmzFBqaqq2b9+uBx54QPfff7/rF/ypU6fUr18/ff/993r33Xe1Y8cOPfbYY3I6nZKkt99+W2PHjtV///d/68svv9S9996rkSNHasOGDW59TJkyRZmZmcrPz9dll12m22+/Xffee68mTpyoLVu2yLIsjR492tX+k08+UWZmpsaOHatdu3Zp/vz5Wrx4sZ555pl6H9eTTz6pP/zhD9qxY4fuuOMO/ed//qd27959xm0ef/xxzZgxQ1u2bFGLFi10991317s/AD7m9XzsAJq1fv36WWPHjrUsy7KSk5OtO++80/Wd0+m02rRpY82dO9eyLMuaP3++1bJlS+uHH36odV99+vSxRo0a5bbulltusQYNGuT6WZL1xBNPuH7Oy8uzJFkLFy50rXvzzTet8PBw18+/+93vrKlTp7rt929/+5vVtm3beh2jJOu+++5zW5eWlmbdf//9lmVZ1v79+y1J1vbt2y3LsqwNGzZYkqwPP/zQ1X716tWWJKusrKxefQLwLUZ0APhEt27dXMs2m00JCQk6evSoJCk/P189evSo876e3bt3q2/fvm7r+vbtW2Pk5Od9xMfHS5K6du3qtq68vFx2u12StGPHDj399NOKjo52fUaNGqUjR46otLS0XseVnp5e4+dfG9H5eZ1t27aVJNd/CwCNi5uRAfjEL5/AstlsrktTERERPu/DZrPVue6nfk+dOqXJkyfr5ptvrrGv8PBwn9RU3zp/qglA42JEB0CD69atm/Lz83XixIlav+/YsaM+/fRTt3WffvqpOnXqdFb9Xn755dq7d686dOhQ4xMUVL9//j7//PMaP3fs2PGs6gLQeBjRAdDghg0bpqlTp+qmm25STk6O2rZtq+3btysxMVHp6ekaN26cbr31VvXo0UMZGRl67733tHLlSn344Ydn1e+kSZN0ww03qF27dho6dKiCgoK0Y8cOffnll/rzn/9cr32sWLFCqampuvLKK7VkyRJt3rxZCxcuPKu6ADQeRnQANLjQ0FCtW7dObdq00aBBg9S1a1dNmzZNwcHBkqSbbrpJL774op5//nl17txZ8+fP16JFi9S/f/+z6nfgwIH63//9X61bt069evXSFVdcoRdeeEHJycn13sfkyZO1dOlSdevWTa+//rrefPPNsx5pAtB4bJZlWf4uAgAAoCEwogMAAIxF0AHQLC1ZssTtsfOffzp37uzv8gD4CJeuADRLJSUlKioqqvW7kJAQj+7jARC4CDoAAMBYXLoCAADGIugAAABjEXQAAICxCDoAAMBYBB0AAGAsgg4AADAWQQcAABiLoAMAAIz1/9tcHUva/zJmAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# TODO your code here\n", "sns.pointplot(x='income_bin', y='Participation', data=gov_transfers, linestyle='none')\n", "# convert the xticks to the same units as the original income data\n", "plt.xticks(ticks=[0, 5, 9.5, 14, 19], labels=[-0.02, -0.01, 0, 0.01, 0.02])\n", "# plot the cutoff as a vertical line\n", "plt.axvline(x=9.5, color='black', linestyle='--', label='Income cutoff')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Part 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we'll look at the outcome variable, `Support`. Generate a `sns.pointplot` of `y=Support` vs `x=income_bin`. Set `linestyle='none'` to plot the points individually. " ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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njxZubm5Sk9P16JFixQdHa2lS5e6Lb9hwwYNGzZMd999t9LS0jRy5EhNmDDhnFqk8PBwJScnuzZ+8AH+48v+O2/vLPeo/FvfKR8TE6OjR4/q6NGjiomJ8ToOAKHDtESooaFBmzdvVk5OztlgwsKUk5OjjRs3ur0mOztbmzdvdiU+X3zxhdasWaPRo0e3KvfZZ5+pe/fuuuyyy/TTn/5U+/fv992DwDIYpXRhvu6/U1nb6NPyAKzHtETo2LFjam5uVlJSUqvjSUlJKisrc3vN3XffraeeekpXX321IiIidPnll2vEiBF6/PHHXWWysrK0bNkyrV27VgsXLtS+fft0zTXXqLq67R+89fX1qqqqarUB38YopQvzR/+d+KgIn5YHYD2md5b2RGlpqebMmaPnn39eW7Zs0WuvvabVq1fr6aefdpW58cYbNX78ePXv31+jRo3SmjVrVFFRoVdffbXN+xYWFio+Pt61paam+uNxECQYpdQ+3vTf8dT16UkXLvQtI79Tvra2ViNGjNCIESNYYgOAJBMToa5du8put6u8vHUbfnl5uZKTk91eM3PmTP385z/X/fffr379+um2227TnDlzVFhY2OZ0+QkJCerdu7f27t3bZizTp09XZWWlaztw4ID3D4aQwiil9uto/532GJCaoP4949tVNqNnvDJTE1oda2lp0bp167Ru3TqW2AAgycREKDIyUgMHDlRJSYnrWEtLi0pKSjR06FC315w6dUphYa1DttvtktTmL6CTJ0/q888/V0pKSpuxOBwOxcXFtdoAyT+1HKHCH/13bDab5o3PUJzz/CNB45zhmjs+o0Mj1ABYg6lNYwUFBVq8eLFeeukl7dq1S3l5eaqpqVFubq4kaeLEiZo+fbqr/JgxY7Rw4UItX75c+/bt09tvv62ZM2dqzJgxroTokUce0bp16/Tll19qw4YNuu2222S32zVhwgRTnhHBzR+1HKHCX/13eifFqjgvu82aoYye8SrOy1bvpFiv7g/AWkydYOfOO+/U0aNHNWvWLJWVlSkzM1Nr1651daDev39/qxqgGTNmyGazacaMGTp06JASExM1ZswYPfPMM64yBw8e1IQJE3T8+HElJibq6quv1vvvv6/ExES/Px+CH6OU2u/69CQtLP283eW/23/HE72TYvVG/jANmVPi6sAe6wjXy/cNUWYH5yoCYC2mzzQ4ZcoUTZkyxe250tLSVvvh4eGaPXu2Zs+e3eb9li9f3pnhweIYpdR+Z/rvtKcp0V3/HU/ZbDZF2s/+oRQXFXHO5IkAcCFBNWoM8LeOjlIKRL6aD4n+OwCCEYkQcB4dHaUUaHw9H1Iw9N+Jjo5WdHS0ad8PILCQCIEZk88jlGo5/DUf0pn+O4mxDtexWEe4Xn8wW6vyh5maBMXExKimpkY1NTUssQFAEolQUEiJd6pHQpR6JEQpJd7ZqfdmxuQLC4Zajgvx93xIbfXfCeREEYA1md5ZGhdWnJftk/ueqSFo65fjmRqCQP8l7w/BPkqpM1ZtB4BQRCJkUZ7WEKzKHxbwv+x9LZhHKXkzH1KwPJsn6urq9JOf/ESS9Je//EVOZ+fWsAIXMm7hBh2urJN0urbfV3/oov1IhCyKGgJrYT6k05qbm7VmzRrXZ8DfDlfW6VAF69wFEvoIWRQzJlsL8yEBgHskQhZFDYG1hOJ8SADQGUiELIoaAmsJtfmQAKCzkAhZFDUE1hJK8yEBQGeis7RF+XtdKJjvzHxIj6zc7va9Z/SM19zxGZafKgHAhYXS6DdqhCyKGgJrCuRZnwEEjzOj3w5V1LoSomBFImRhoTBjMjxn5VmfY2JiZBiGDMNgiQ0AkkiELI8aAgCAldFHCEE9YzIAAB1BIgQEEMMw1NDc4tqvqm3Ulv3faEAQrGcWDOrq6vTzn/9ckvTKK68ExBIbodTpFAhGNI0BAWJPebXGFq13LeoqSdX1Tbr9+Q0aW7Ree8qrTYwuNDQ3N6u4uFjFxcUBs8RGKHU6BYIRiRAQAPaUV2vcwg1tTmew42Clxi3cQDIEAJ2MRKiDUuKd6pEQpR4JUUqJN7+aHcHHMAw9snK7quqazluuqq5Jj67cLsMw/BQZAIQ++gh1EO356KitByraNbGlJG0/WKltByrozA4AnYRECH7z7Rozas/OentnuUfl39pZTiIEAJ2ERAh+Q+2Ze5W1jT4tD+8wgg+wBvoIASaLj4rwaXl4jhF8gHVQIwSY7Pr0JC0s/bzd5UemJ/kwmtAWHR2tkydPuj67c2YEX1ud18+M4GP5mdDDnE7WRI0QYLIBqQltrvf2XRk945WZmuDbgEKYzWZTTEyMYmJi3DZvMYLP2pjTyZqoEQJMZrPZNG98xnlrISQpzhmuueMz6J/iQ4zgC2zU2MAXqBECAkDvpFgV52W3WTOU0TOepphOUF9fr3vuuUf33HOP6uvrzznvzQg++A81NvAFEiGEjLZG+QRL80XvpFi9kT9MibEO17FYR7hefzBbq/KHkQR1gqamJr300kt66aWX1NR0bu0bI/gA6yERQkgIlVE+NptNkfaz/yzjoiI04JKLaA7zE0bwAdZDIoSgxzpd6CzXezgijxF8QPAjEUJQY5QPOhMj+ADrIRFCUPNmlA/QljMj+OKc5x9Qywg+IHSQCCGoMcoHnY0RfIC1kAghqDHKB77ACD7AOkxPhIqKipSWlian06msrCxt2rTpvOUXLFigPn36KCoqSqmpqXr44YdVV9d6PglP74ngxSgfeCI6OlpHjhzRkSNH2lxi4wxG8AHWYGoitGLFChUUFGj27NnasmWLMjIyNGrUKB05csRt+T/96U+aNm2aZs+erV27dmnJkiVasWKFHn/8ca/vieDGKB94wmazKTExUYmJiSQ0ACSZnAjNnz9fkydPVm5urtLT07Vo0SJFR0dr6dKlbstv2LBBw4YN09133620tDSNHDlSEyZMaFXj4+k9EdwY5QMA6AjTEqGGhgZt3rxZOTk5Z4MJC1NOTo42btzo9prs7Gxt3rzZlfh88cUXWrNmjUaPHu31PaXT0+5XVVW12hAcGOUDT9TX1ys/P1/5+flul9gAYD2mJULHjh1Tc3OzkpJaN1UkJSWprKzM7TV33323nnrqKV199dWKiIjQ5ZdfrhEjRriaxry5pyQVFhYqPj7etaWmpnbw6eBPjPJBezU1Nen555/X888/73aJDQDWY3pnaU+UlpZqzpw5ev7557Vlyxa99tprWr16tZ5++ukO3Xf69OmqrKx0bQcOHOikiOEvjPIBAHjj/O0JPtS1a1fZ7XaVl7ee16W8vFzJyclur5k5c6Z+/vOf6/7775ck9evXTzU1NXrggQf0X//1X17dU5IcDoccDkeb5xEc2hrlAwBAW0yrEYqMjNTAgQNVUlLiOtbS0qKSkhINHTrU7TWnTp1SWFjrkO12u6TTSy14c08AAGBdptUISVJBQYEmTZqkQYMGaciQIVqwYIFqamqUm5srSZo4caJ69OihwsJCSdKYMWM0f/58DRgwQFlZWdq7d69mzpypMWPGuBKiC90TAADgDFMToTvvvFNHjx7VrFmzVFZWpszMTK1du9bV2Xn//v2taoBmzJghm82mGTNm6NChQ0pMTNSYMWP0zDPPtPueAEJHSrzT7WcAaC9TEyFJmjJliqZMmeL2XGlpaav98PBwzZ49W7Nnz/b6ngBCR3FettkhAAhypidCAEJTINbWREVFad++fa7PAEAiBMAnArG2JiwsTGlpaWaHASCABNU8QgAAAJ2JRAiAZTQ0NOjRRx/Vo48+qoaGBrPDARAASIQAWEZjY6PmzZunefPmqbGx0exwAAQAEiEAAGBZJEIAAMCyGDUGSYE51BkAAF8jEYKkwBzqDACAr5EIAQAQQsYt3KDDlXWSTtfw84fu+ZEIARZEUygQug5X1ulQRa3ZYQQNEiHAgqz6F2JUVJQ+/vhj12cAgctfNVskQgAsIywsTH379jU7DADt4K+aLRIhwAM0KQFAaCERAjxg1SalUNHQ0KA5c+ZIkh5//HFFRkaaHBEAs5EIAbCMxsZGPfnkk5KkRx99lEQIADNLAwAA6yIRAgAAlkUiBAAALItECAAAWBaJEAAAfmAYhhqaW1z7VbWN2rL/GxmGYWJU8CoRuvfee1VdXX3O8ZqaGt17770dDgoAgFCyp7xaY4vW62h1vetYdX2Tbn9+g8YWrdee8nN/p8I/vEqEXnrpJdXWnjvbY21trV5++eUOBwUAvuB0OrVp0yZt2rRJTicTYsI/9pRXa9zCDdpxsNLt+R0HKzVu4YagSYZCrWbLo3mEqqqqZBiGDMNQdXV1qx8kzc3NWrNmjbp169bpQQJAZ7Db7Ro8eLDZYcBCDMPQIyu3q6qu6bzlquqa9OjK7VqVP0w2m81P0XluT3m1Hlm53W3NVv+e8Zo3PkO9k2JNjNBzHiVCCQkJstlsstls6t279znnbTaba7IyAACsbuuBijZrgr5r+8FKbTtQoQGXXOTjqLxzpmarraTuTM1WcV52UCVDHiVC7777rgzD0LXXXqu//OUvuvjii13nIiMj1atXL3Xv3r3TgwSAztDQ0KDf/va3kqSpU6cyszR87u2d5R6Vf2tneUAmQqFWs/VtHiVCw4cPV1NTkyZNmqRBgwYpNTXVV3EBQKdrbGzUY489Jkl68MEHSYTgc5W1jT4t7y+hVLP1XR53lg4PD1dxcbGam5t9EQ8AACEjPirCp+X9xZuarWDh1aixa6+9VuvWrevsWAAACCnXpyd5VH6kh+X9JVRqttzxavX5G2+8UdOmTdNHH32kgQMHKiYmptX5W265pVOCAwAgmA1ITVD/nvHtalbK6BmvzNQE3wflhVCp2XLHq0TowQcflCTNnz//nHM2m41mMwAAdPp34rzxGecdbSVJcc5wzR2fEbAdjK9PT9LC0s/bXT5Qa7bc8apprKWlpc2NJAgAgLN6J8WqOC9b/XvGuz2f0TM+4Iecn6nZao9Artlyh7XGAADwsd5JsXojf5gSYx2uY7GOcL3+YLZW5Q8L6CRIOluzFec8f0NSoNdsueN1IrRu3TqNGTNGV1xxha644grdcsst+uc//9mZsQGWlBLvVI+EKPVIiFJKPMtAdCan06l3331X7777bkAssRFqSxXg/Gw2myLtZ3/txkVFaMAlFwVN0hAKNVvueJUI/b//9/+Uk5Oj6OhoPfTQQ3rooYcUFRWl6667Tn/60588vl9RUZHS0tLkdDqVlZWlTZs2tVl2xIgRrtmtv73ddNNNrjL33HPPOedvuOEGbx4V8LvivGytn3at1k+7VsV52WaHE1LsdrtGjBihESNGyG63mxoLi3AiGAV7zZY7XnWWfuaZZ/Sb3/xGDz/8sOvYQw89pPnz5+vpp5/W3Xff3e57rVixQgUFBVq0aJGysrK0YMECjRo1Srt373a7btlrr72mhoYG1/7x48eVkZGh8ePHtyp3ww036MUXX3TtOxwOAUAgCNWlCmANbdVsBSuvaoS++OILjRkz5pzjt9xyi/bt2+fRvebPn6/JkycrNzdX6enpWrRokaKjo7V06VK35S+++GIlJye7trffflvR0dHnJEIOh6NVuYsuCt6XBKBzNDY2qqioSEVFRWpsNGeeE0+XKqCZDPAtrxKh1NRUlZSUnHP8nXfe8WjZjYaGBm3evFk5OTlnAwoLU05OjjZu3NiueyxZskR33XXXOXMZlZaWqlu3burTp4/y8vJ0/PjxdscFIDQ1NDRoypQpmjJlSquaZX/yZqkCAL7jVdPYf/7nf+qhhx7Stm3blJ19ug/D+vXrtWzZMteChu1x7NgxNTc3Kymp9XwDSUlJ+vTTTy94/aZNm/Txxx9ryZIlrY7fcMMNuv3223XppZfq888/1+OPP64bb7xRGzdudNsvoL6+XvX1Z9vpq6qq2v0MAOCJUFmEEwgVXiVCeXl5Sk5O1nPPPadXX31VknTVVVdpxYoVGjt2bKcGeD5LlixRv379NGTIkFbH77rrLtfnfv36qX///rr88stVWlqq66677pz7FBYW6sknn/R5vAAQyksVAMHI6+Hzt912m9577z0dP35cx48f13vvvedxEtS1a1fZ7XaVl7f+C6m8vFzJycnnvbampkbLly/Xfffdd8Hvueyyy9S1a1ft3bvX7fnp06ersrLStR04cKD9DwEgZPliKoNQXqrAl5hqAL7iVY3QGR9++KF27dolSUpPT9fAgQM9uj4yMlIDBw5USUmJbr31VkmnZ60uKSnRlClTznvtypUrVV9fr5/97GcX/J6DBw/q+PHjSklJcXve4XAwqgzAOXwxfUEoL1XgK3vKq/XIyu1upxro3zNe88ZnMLoOXvOqRujgwYO65pprNGTIEE2dOlVTp07V4MGDdfXVV+vgwYMe3augoECLFy/WSy+9pF27dikvL081NTXKzc2VJE2cOFHTp08/57olS5bo1ltv1fe+971Wx0+ePKlHH31U77//vr788kuVlJRo7NixuuKKKzRq1ChvHhcAOk0oL1XgC2emGmirg/mZqQaYdwne8ioRuv/++9XY2Khdu3bpxIkTOnHihHbt2qWWlhbdf//9Ht3rzjvv1Lx58zRr1ixlZmZq27ZtWrt2rasD9f79+3X48OFW1+zevVvvvfee22Yxu92uHTt26JZbblHv3r113333aeDAgfrnP/9JrQ8A04XyUgWdjakG4A9eNY2tW7dOGzZsUJ8+fVzH+vTpo9/97ne65pprPL7fmeGs7pSWlp5zrE+fPm3+Dx8VFaW///3vHscAIPQ5HA797W9/c302y5mlCh5Zud1tTUdGz3jNpbnHq6kGGGEHT3mVCKWmprqdjKy5uVndu3fvcFAA4Avh4eGtluMx05mlCobMKXH1fYl1hOvl+4YoMzXB0jVBZ/hzqoG2OmMP4F2EPK+axubOnav/+I//0Icffug69uGHH2rq1KmaN29epwUHAKEs2Bfh9DV/TTXAum/W5lWN0D333KNTp04pKytL4eGnb9HU1KTw8HDde++9uvfee11lT5w40TmRAkAHNTY26o9//KMk6ac//akiIhiaHsj8MdUA677Bq0RowYIFnRwGAPheQ0ODa0Tq+PHjSYQCnK+nGvC0M/aq/GHU1oUgrxKhSZMmdXYcAAC0cmaqgfZ0mPZmqgE6Y0PqwISKzc3Nev3111tNqDh2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9BUVFdXp32Gz2do8duZ7T548qSeffFK33377OfdyOp2dElN74zwTEwD/oUYIQEDo37+/tm3bphMnTrg9f9VVV2n9+vWtjq1fv17p6ekd+t4f/vCH2r17t6644opztrCw9v2IfP/998/Zv+qqqzoUFwD/oEYIQECYMGGC5syZo1tvvVWFhYVKSUnR1q1b1b17dw0dOlSPPvqo7rjjDg0YMEA5OTn661//qtdee03vvPNOh7531qxZuvnmm3XJJZdo3LhxCgsL0/bt2/Xxxx/r17/+dbvusXLlSg0aNEhXX321/vjHP2rTpk1asmRJh+IC4B/UCAEICJGRkXrrrbfUrVs3jR49Wv369dOzzz4ru90uSbr11lv129/+VvPmzVPfvn31wgsv6MUXX9SIESM69L2jRo3S3/72N7311lsaPHiwfvSjH+l//ud/1KtXr3bf48knn9Ty5cvVv39/vfzyy/rzn//c4ZoqAP5hMwzDMDsIAAAAM1AjBAAALItECADa8Mc//rHVsPpvb3379jU7PACdgKYxAGhDdXW1ysvL3Z6LiIjwqB8RgMBEIgQAACyLpjEAAGBZJEIAAMCySIQAAIBlkQgBAADLIhECAACWRSIEAAAsi0QIAABYFokQAACwrP8PzJPqqrYT2AwAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# TODO your code here\n", "sns.pointplot(x='income_bin', y='Support', data=gov_transfers, linestyle='none')\n", "plt.xticks(ticks=[0, 5, 9.5, 14, 19], labels=[-0.02, -0.01, 0, 0.01, 0.02])\n", "plt.axvline(x=9.5, color='black', linestyle='--', label='Income cutoff')\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On Worksheet 5, we fit two linear regressions on either side of the cutoff. Another approach to estimating the average treatment effect is to fit a single linear regression that allows the slope to change at the cutoff:\n", "\n", "$$\n", "Y = \\beta_0 + \\beta_1 (R - c) + \\beta_2 T + \\beta_3 (R -c ) \\cdot T \n", "$$\n", "\n", "Since $c=0$, this simplifies to:\n", "\n", "$$\n", "Y = \\beta_0 + \\beta_1 R + \\beta_2 T + \\beta_3 R\\cdot T\n", "$$\n", "\n", "The average treatment effect at the cutoff is then given by $\\beta_2$.\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.09985188527415911\n" ] } ], "source": [ "# TODO your code here\n", "rdd_formula = 'Support ~ 1 + Income_Centered + Participation + Income_Centered*Participation'\n", "rdd_model = smf.ols(rdd_formula, data=gov_transfers).fit()\n", "print(rdd_model.params['Participation'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "What is your estimate of the average treatment effect at the cutoff (rounded to 1 decimal place)?\n", "\n", "**Your response:** [pollev.com/tliu](https://pollev.com/tliu)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Acknowledgements\n", "\n", "This activity uses data from Nick Huntington-Klein's `causaldata` package." ] } ], "metadata": { "kernelspec": { "display_name": "venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.10" } }, "nbformat": 4, "nbformat_minor": 2 }