- afm_bias, thresholds 20/80 (bad: 0-20, good: 80-100)
- **only 4 domains in bad bin!** results below are just so we can contrast the two sets of results (modeling `t1` vs `t1-t0`)
- see [[220322_151215 bad-good-count condition interaction|original analysis modeling just t1 instead of t1 minus t0]]
- 133 domains in good bin
- outcome y: t1-t0 difference (separately for bad and good bins; 2 rows per user)
OLS model
```r
# conditionC: -0.5, 0.5 (control, treatment)
# qualityC: -0.5, 0.5 (bad, good)
dt1[, t1_t0_diff := t1 - t0]
feols(t1_t0_diff ~ conditionC * qualityC | block, dt1, vcov = ~ screen_name)
# OLS model
> feols(t1_t0_diff ~ conditionC * qualityC | block, dt1, vcov = ~ screen_name)
OLS estimation, Dep. Var.: t1_t0_diff
Observations: 65,776
Fixed-effects: block: 5,424
Standard-errors: Clustered (screen_name)
Estimate Std. Error t value Pr(>|t|)
conditionC -0.048363 0.028850 -1.67637 0.093676 .
qualityC -0.978786 0.031359 -31.21207 < 2.2e-16 ***
conditionC:qualityC -0.114435 0.062718 -1.82458 0.068073 .
# reparameterized OLS models
Estimate Std. Error t value Pr(>|t|)
conditionC 0.008855 0.018332 0.483022 0.629083 # treatment effect for 4 bad domains
conditionC -0.105580 0.057405 -1.83921 0.065894 . # treatment effect for 133 good domains
```
quasipoisson model - similar results as OLS model
- re-scaled such that min `t1_t0_diff` value is 0
```r
# quasipoisson model
> feglm(t1_t0_diff ~ conditionC * qualityC | block, dt1, family = "quasipoisson", vcov = ~ screen_name)
GLM estimation, family = quasipoisson, Dep. Var.: t1_t0_diff
Observations: 65,776
Fixed-effects: block: 5,424
Standard-errors: Clustered (screen_name)
Estimate Std. Error t value Pr(>|t|)
conditionC -0.002206 0.001308 -1.68663 0.091684 .
qualityC -0.043507 0.001425 -30.53001 < 2.2e-16 ***
conditionC:qualityC -0.005167 0.002850 -1.81292 0.069853 .
```
![[s20220323_114254.png]]
![[s20220323_113538.png]]