It is very fortunate that the 0s remain, otherwise SPSS would have implemented the log function incorrectly. What does \(^{10}\log(1)\) mean? To what power do I need to raise 10 to get 1, so you try to find \(x\) in \(10^x = 1\). The answer is 0.

However, more generally I think it is a bad idea to deal with 0s this way. You get much easier to interpret results by using a log link function instead of log transforming your data, see e.g.:

Nicholas J. Cox, Jeff Warburton, Alona Armstrong, Victoria J. Holliday (2007) "Fitting concentration and load rating curves with generalized linear models"

*Earth Surface Processes and Landforms*, 33(1):25--39. DOI:

10.1002/esp.1523
Santos Silva, J.M.C., S. Tenreyro 2006. "The log of gravity",

* The Review of Economics and Statistics*, 88(4):641-658. DOI:

10.1162/rest.88.4.641
Even more generally, you do

**not** want your variables to be normally distributed, but your residuals. Even that is not important if you have more than say 30 observations (you'll need more observations if you have many explanatory variables or the variance in the explanatory variables is low or the explanatory variables are highly correlated).