Dummy Variables and coding reasons

A ran a regression analysis predicting Salary from gender. In the data Female was coded as 2 and male was coded as 1. Then I was asked to change females to -1 and male to 5. In the analyis ɑ, b, t,and SEb changed. Why? What is the reasoning behind the coding system here? I am really new to stats and I might sound super dumb but I need help here!

• We need more information. Why were you asked to change the coding? Is this part of an assignment? It does not make sense to code a dummy variable like this. – T.E.G. Feb 12 '17 at 3:12
• Thank you for responding. It is part of an assignment and I think the whole point is explaining why some values changed when the coding changed. I am assuming it has to do with the numbers used for coding. I have read that it is common to use Male= 0 and Female= 1 (where male is the reference group). – SLeca Feb 12 '17 at 3:25
• Yes, that is the common practice. If the sole aim of the assignment is to show the reason why we use 0 and 1, then I think the question is now redundant. – T.E.G. Feb 12 '17 at 3:29
• This question might be of interest: stats.stackexchange.com/questions/16689/… – T.E.G. Feb 12 '17 at 3:30

It is hard to see without further information why one would lie to code a binary variable as $(-1,5)$, but it is fairly easy to see how the coefficient changes with a simple experiment:

lets create a random data.frame in R with 100 observations, where salary has a mean of 60K with a standard deviation of 15K:

   set.seed(10)
df <- data.frame(salary = rnorm(100, mean = 60000, sd = 15000), gender = rbinom(100, 1, 0.42))
df$gender5 <- ifelse(df$gender == 0, -1, 5)


Now gender is coded $(0,1)$ and gender5 is coded $(-1,5)$. Lets regress salary with gender with the original encoding and with the new one:

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)    61291       1994  30.736   <2e-16 ***
gender         -6421       2765  -2.322   0.0223 *

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)  60220.7     1692.1  35.589   <2e-16 ***
gender5      -1070.2      460.9  -2.322   0.0223 *


So:

coefficient: The coefficient has a simple meaning always - whats the average difference in salary between the two categories. The first coding $(0,1)$ is very intuitive and so is used often, and is easily understood when viewed through the regression equation: $\hat{salary}=61,291-6,421\times gender$. If males are coded $1$ and females $0$, than males predicted average salary is $61,421-6,421\times 1=54,870$ or simply $6,421$$less than females. When the coding changes, so does the meaning. Now instead a gap of$1$, we have a$6$. Now if we want to predict men, we will do:$\hat{salary}=60,220.7-1,070.2\times 5 = 54,870$. Exactly the same (with a rounding error). The gap is not$1$now, but$6$, so$-1,070.2\times 6=6,421$- same as before, just much less intuitive to calculate. Standard Error: Same shtick. The$s.e.$is dependent on the distribution. if you change it, you change the deviation. so$2765/6=460.9\$

T and significance value: Should not change. If it did, there probably is a problem somewhere. re-coding the variables changes the coefficients, but not the significance values.

• @SLeca you are very welcome. If you feel this is satisfactory, feel free to accept this answer which will mark the question as resolved :) – Yuval Spiegler Feb 17 '17 at 13:38