# Log-Transform Values in the range of -400 to 400. Would adding a large constant matter for log-transform? [duplicate]

My data consists of score values in the range of -400 to 400.

I am thinking of log-transforming them, but is it statistically wise for me to make 400 as a constant?

log(x + 400)


If I have values between 0 and 400.

I know I can do log ( x + 1 ) to log-transform them successfully if I have zeroes in the dataset. Would the values of the constant matter when log-transforming?

Any input is appreciated.

• Why log transform in the first place? What's the range of values you could observe? Do you have heavy tails that makes you want to transform data? What's the actual problem / question you try to answer? Jul 17, 2022 at 18:56

It matters, sure. I don't know how it applies to your case specifically, but since the log function grows more and more slowly it effectively squeezes values more toward one another with a higher constant.

You can for instance make the variance on the log scale very small by using a huge constant, see examples below. The curves in the plot arrange themselves with increasing constant from bottom to top. We see that the log(x+500) curve barely changes over the interval of x.

x = runif(100, 0, 400)

# variance of log(x)
var(log(x))
#> [1] 1.310974

# variance of log(x+400)
var(log(x+400))
#> [1] 0.04018586

curve(log(x), from=0, to=400, ylim=c(0,7))