I have a question and I hope someone can help me with my confusion. I want to run a univariable logistic regression model to see whether my predictor (which is not normally distributed, but also not crazy skewed) is associated with the odds of the outcome (dichotomous). I understand that it is not necessary to have a normally distributed predictor. However, when I run the model with it the odds are not significant, whereas if I just transform it to log(predictor) the odds are significant. How can that be and what is the right way? When I just use a t-test between the two outcomes using log(predictor) the p-value is almost identical with the regression model that uses log(predictor). Is that a coincidence?
What this is telling you is that the relationship between your predictor and outcome is exponential (or at least is more close to exponential than it is linear). I find this most easy to explain with an example. In epidemiology, dose-response curves describe the likelihood of an effect based upon the dose of a chemical (or bacteria, or whatever) that an organism ingests. Say if we gave a mouse some poison, we could measure what dose of poison it takes to start killing more mice. (See picture). This relationship is usually similar to the horrible picture I just drew. If you modeled this relationship linearly, it would be impossible to draw a logistic regression curve that makes sense.
Furthermore, it is not a coincidence that the t-test had the same p-value; they are identical tests with regard to the null. The difference is that the logistic regression can tell you the probability of your outcome given a level of your predictor, whereas a t-test cannot.
When you don't know that the true relationship is linear in the logit it is best to allow the predictor to have a smooth flexible relationship with the logit. Regression splines are excellent choices for relaxing the linearity assumption, and they preserve the type I error unlike trying different transformations to see what fits.