I have a panel data that includes a decade of firm-year observations (1995- 2005). These companies are from different countries.

A law has passed in (almost) every country at different points in time. For example, if a law passed in France in 2001, the variable 'law' is equal to 0 for firm-year observations in France from 1995 to 2000 and to 1 from 2001 to 2005. France is a developed country. The variable 'developed' is equal to 1 for all firm-year observations in France over the decade 1995-2005.

I ran this line of code with Stata:

areg payable i.law##i.developed i.year, absorb(firmid) vce(cluster countryindust)

I want to know what is this impact of the law alone, market development (developed country or not) and the interaction between the passage of the law and market development on accounts payable.

The problem is that the coefficient 'developed' is omitted. It says that '1.developed omitted because of collinearity'. Is it because my model has a constant? I don't understand because people use this specification all the time.

Note: I also have time and firm fixed effects. I cluster for country-industry.

Am I doing something wrong? What should I do so that no coefficient is omitted?


1 Answer 1


You have firm fixed effects. Presumably, every firm is in the same country throughout your observation period. Moreover, no country ever changes its development status (I assume). Hence, for a given firm, there is no variation in the development status. Therefore, you can't identify an effect.

  • $\begingroup$ Oh, I see! Thank you so much! What can I do with the fixed effects? In my field, that is a given to add firm and fixed effects. $\endgroup$
    – windyboo
    Sep 10, 2019 at 13:57
  • $\begingroup$ It makes sense to control for firm characteristics, but you won't be able to say anything about development status then. So your specification needs to be less restrictive. The first thing is obiously to get rid of the firm fixed effects and maybe control for industries or firm size. You could also try running two separate specifications by development status, but I don't know whether that invalidates your approach. $\endgroup$
    – E. Sommer
    Sep 10, 2019 at 14:13
  • $\begingroup$ I have already run two separate specifications by development status. I was trying to figure out how I could put all the data (developed or not) together. Thank you so much for taking the time to answer! $\endgroup$
    – windyboo
    Sep 10, 2019 at 14:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.