I am curious about something regarding the felm command.
I want to run a very simple IV model where the variable D is instrumented by one varibale say Z and without any control variable. If I use the old syntax I would write:
late<- felm(Y~D, iv=list(D~Z))
it works fine.
But If I used the recommended and new syntax:
late2<- felm(Y~D|0|(D~Z)|0) stargazer(late2, type="text", title="LATE effect"
I get the following message:
Error in chol.default(mat[ok, ok]) : 'a' must have dims > 0 Error in chol2inv(ch) : element (1, 1) is zero, so the inverse cannot be computed
If I add a control variable though it works again:
late3<- felm(Y~X|0|(D~Z+X)|0) stargazer(late2, type="text", title="LATE effect"
Does it mean that the new syntax of felm does not allow to use an IV without control variables? That's annoying.