Generate
Estimate
Discriminate
Generate
Estimate
Discriminate
We can think of two dimensions of uncertainty in a policy evaluation:
We can think of two dimensions of uncertainty in a policy evaluation:
Our objective here is to develop an inference decision framework around these dimensions.
Example:
\[ SE = \frac{\sigma}{\sqrt{n}} \] - \(SE\) is the standard error of the sample - \(\sigma\) is the sample standard deviation - \(n\) is the sample size.
This leads to the following frequently-asked questions:
Scenario: Random sample of units from a large population with randomized treatment assignment at the unit level.
Scenario: Random sample of units from a large population with randomized treatment assignment at the unit level.
No reason to cluster, even if there is within-cluster correlation in outcomes.
Clustering standard errors can be harmful, resulting in unnecessarily wide confidence intervals.
If the sample represents a large fraction of the population and treatment effects are heterogeneous across units, robust standard errors are also conservative.
Source: Abadie et al. (2022)
Scenario: Random sample of units from a large population with randomized treatment assignment at the unit level.
No reason to cluster, even if there is within-cluster correlation in outcomes.
Clustering is not appropriate even if there is within-cluster correlation in outcomes (however those clusters are defined), and thus even if clustering makes a substantial difference in the magnitude of the standard errors.
However, if the data contain information on attributes of the units that are correlated with unit-level treatment effects, the methods in Abadie et al. (2020) can be applied to obtain less conservative standard errors.
Source: Abadie et al. (2022)
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Classic Inference | -0.022 | 0.019 | 0.259 |
| Robust | -0.022 | 0.019 | 0.259 |
| Clustered | -0.022 | 0.021 | 0.308 |
Scenario: Clustered sample of units within clusters from a large population with randomized treatment assignment at the unit level.
Scenario: Clustered sample of units within clusters from a large population with randomized treatment assignment at the unit level.
Scenario: Clustered sample of units within clusters from a large population with randomized treatment assignment at the unit level.
Source: Abadie et al. (2022)
Scenario: Clustered sample of units within clusters from a large population with randomized treatment assignment at the unit level.
If \(q_k\) small or if \(q_k\) large but \(p_k\) small, clustered standard errors are asymptotically correct (with large # of clusters).
Source: Abadie et al. (2022)
Scenario: Clustered sample of units within clusters from a large population with randomized treatment assignment at the unit level.
If \(q_k\) small or if \(q_k\) large but \(p_k\) small, clustered standard errors are asymptotically correct (with large # of clusters).
If the total number of clusters is small (e.g., 30 or less), you may need to adopt a different inference approach. More later!
Source: Abadie et al. (2022)
If \(q_k\) small or if \(q_k\) large but \(p_k\) small, clustered standard errors are asymptotically correct (with large # of clusters).
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Robust | -0.021 | 0.019 | 0.259 |
| Clustered | -0.021 | 0.023 | 0.355 |
If the total number of clusters is small (e.g., 30 or less), you may need to adopt a different inference approach. More later!
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Robust | 0.01 | 0.015 | 0.518 |
| Clustered | 0.01 | 0.010 | 0.349 |
| unit_id | cluster | w_i | y_obs | y_1 | y_0 |
|---|---|---|---|---|---|
| 843943 | 44 | 0 | 0.66 | ? | 0.66 |
| 726814 | 32 | 1 | 0.93 | 0.93 | ? |
| 265572 | 10 | 0 | -1.65 | ? | -1.65 |
| 105153 | 6 | 1 | -1.54 | -1.54 | ? |
| 885526 | 44 | 1 | 0.09 | 0.09 | ? |
Scenario: Random sample of units from a large population with partially or fully clustered treatment assignment.
Scenario: Random sample of units from a large population with partially or fully clustered treatment assignment.
If assignment is perfectly clustered, and you observe a large number of clusters, use standard cluster adjustment.
Source: Abadie et al. (2022)
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Robust | -0.431 | 0.019 | 0.000 |
| Clustered | -0.431 | 0.339 | 0.209 |
Scenario: Random sample of units from a large population with partially or fully clustered treatment assignment.
Back to basics:
Generate
Estimate
Discriminate
Bootstrap
Estimate
Discriminate
Scenario: Random sample of units from a large population with partially or fully clustered treatment assignment.
Scenario: Random or clustered sample of units from a large population with fully clustered treatment assignment.
If assignment is perfectly clustered, and you observe a large number of clusters, use standard cluster adjustment.
Scenario: Random or clustered sample of units from a large population with fully clustered treatment assignment.
If assignment is perfectly clustered, and you observe a large number of clusters, use standard cluster adjustment.
Scenario: Random or clustered sample of units from a large population with partially clustered treatment assignment.
If assignment is partially clustered (i.e., some variation in Tx assignment within cluster), use CCV/TSCB.
Treatment perfectly correlated with cluster:
| unit_id | cluster | y_i | pr_treated | w_i |
|---|---|---|---|---|
| 309733 | 13 | -0.58 | 0 | 0 |
| 498850 | 26 | -1.13 | 0 | 0 |
| 418742 | 22 | -1.64 | 0 | 0 |
| 385360 | 19 | -1.39 | 0 | 0 |
| 603293 | 28 | -0.94 | 0 | 0 |
| 998667 | 50 | -0.99 | 1 | 1 |
Treatment perfectly correlated with cluster:
| unit_id | cluster | y_i | pr_treated | w_i |
|---|---|---|---|---|
| 309733 | 13 | -0.58 | 0 | 0 |
| 498850 | 26 | -1.13 | 0 | 0 |
| 418742 | 22 | -1.64 | 0 | 0 |
| 385360 | 19 | -1.39 | 0 | 0 |
| 603293 | 28 | -0.94 | 0 | 0 |
| 998667 | 50 | -0.99 | 1 | 1 |
Treatment partially correlated with cluster:
| unit_id | cluster | y_i | pr_treated | w_i |
|---|---|---|---|---|
| 309733 | 13 | -0.58 | 0.47 | 1 |
| 498850 | 26 | -1.13 | 0.48 | 0 |
| 418742 | 22 | -1.64 | 0.44 | 1 |
| 385360 | 19 | -1.39 | 0.66 | 1 |
| 603293 | 28 | -0.94 | 0.58 | 1 |
| 998667 | 50 | -0.99 | 0.40 | 0 |
Source: Abadie et al. (2022)
For each bootstrap replication …
Create a “pseudo-sample” by replicating your original sample \(1/q_k\) times.
For each bootstrap replication …
For each bootstrap replication …
For each bootstrap replication …
For each bootstrap replication …
For each bootstrap replication …
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Classic Inference | 0.028 | 0.019 | 0.143 |
| Robust | 0.028 | 0.019 | 0.140 |
| Clustered | 0.028 | 0.106 | 0.797 |
| Two-Stage Cluster Bootstrap | 0.028 | 0.082 | 0.810 |
If the total number of clusters is small (e.g., 30 or less), you may need to adopt a different inference approach.
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Robust | 0.01 | 0.015 | 0.518 |
| Clustered | 0.01 | 0.010 | 0.349 |
For each bootstrap replicate …
For each bootstrap replicate …
For each bootstrap replicate …
If the total number of clusters is small (e.g., 30 or less), you may need to adopt a different inference approach.
| Method | Coefficient | SE | p-value |
|---|---|---|---|
| Robust | 0.009 | 0.015 | 0.537 |
| Clustered | 0.009 | 0.057 | 0.873 |
| Wild Cluster | 0.009 | NA | 0.906 |
| Two-Stage Cluster Bootstrap | 0.009 | 0.096 | 0.940 |