我了解数据分析编码的逻辑。我下面的问题是关于特定代码的使用。
- 为什么性别经常被编码为女性 0 和男性 1 是有原因的吗?
- 为什么这种编码被认为是“标准的”?
- 将此与女性 = 1 和男性 = 2 进行比较。这种编码有问题吗?
我了解数据分析编码的逻辑。我下面的问题是关于特定代码的使用。
y = a + b * Male
而不是y = a + b * Gender
。它使解释结果更容易。假设您有一些身高数据:
Woman A: 165
Woman B: 170
Woman C: 175
Man D: 170
Man E: 180
Man F: 190
并且您对表格进行了回归Height = a + b * Gender + Residual
。
使用 0,1 虚拟变量,您将估计a
170 是女性的平均身高,b
而 10 是男性和女性的平均身高之间的差异。
使用 1,2 虚拟变量,您将得到 160 的估计值,a
这更难解释。
本来以为是因为常用于存储性别的字段类型是位字段,而SQL中的位字段只能有0或1的值。当你dump出数据时,它出来的是0或1,而所以这就是为什么你会得到那些特定的值。
如果要使用 1 和 2,则必须使用更大的字段类型,这会占用更多空间,从而使整个数据库稍大一些。
我有一位教授建议我们“生物学”编码,女性为 0,男性为 1——以反映解剖学。我不认为这是在课堂上说的最敏感或 PC 的事情,但在 5 年后查看数据集时绝对容易记住。