I am currently attempting to replicate an Econ paper in R, which claims that they take the natural log of net sales. Many of the observations however are either 0 or very close to 0. What is the general procedure in this case?

Thank you and I appreciate your help,

  • $\begingroup$ ssdecontrol posted a great answer to a related question here: stats.stackexchange.com/a/210160/26338 $\endgroup$
    – Andy
    May 1, 2016 at 16:12
  • $\begingroup$ It matters whether net sales is a regressor or response. Note that in many situations, taking the log of any net value is worthless in modeling because the net may be negative. Even net sales can be negative (due to returns). For general methods of dealing with logarithms, please search our site. $\endgroup$
    – whuber
    May 1, 2016 at 17:49

1 Answer 1


There are several alternatives:

  1. Replace zero with a small positive number, like a penny. This is very easy. The drawback of this approach is that the results can be sensitive to what you replace with. Secondly, you may care about net sales, not the log thereof, so you will have to deal with retransforming back to the original scale.
  2. Use a robust-to-heteroskedasticity poisson model. See here for why this works nicely. Naturally handles zeros, no re-transformations to deal with.
  3. Use something like a Tobit or a two-part model. The first (with logged sales) would be the appropriate if the same set of factors is affecting (in exactly the same way) whether or not an observation is at zero and what its value is when not zero. In many economic contexts this does not make much sense. For example, if you model expenditure on vacation and the covariate of interest is the number of kids, the Tobit would not work well. Having more children typically makes people less likely to go on vacation (negative effect), but conditional on going, the expenditure would be larger (positive effect). If the zeros stem from a choice not to sell a product or from a mixture of non-sellers and zero sales among sellers, a Tobit may not work. In that case, something like a two-part model or one of its extensions should be estimated.

Your Answer

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

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