Por que o gênero normalmente é codificado 0/1 em vez de 1/2, por exemplo?

25

Entendo a lógica da codificação para análise de dados. Minha pergunta abaixo é sobre o uso de um código específico.

  • Existe uma razão pela qual o sexo é frequentemente codificado como 0 para o sexo feminino e 1 para o sexo masculino?
  • Por que essa codificação é considerada 'padrão'?
  • Compare isso com Feminino = 1 e Masculino = 2. Há algum problema com esta codificação?
Adhesh Josh
fonte
15
O uso de um esquema de codificação 0/1 é essencialmente útil ao aplicar modelos de regressão entre outros, embora vários esquemas de codificação sejam possíveis, por exemplo, -1/1 (mas isso alterará a interpretação dos coeficientes de regressão). Não deve ser confundido com a entrada de dados (ou seja, o que você realmente coloca no seu banco de dados). Nesse caso, é melhor armazenar os rótulos completos. Converta-os em valores numéricos ou construa uma matriz de design dedicada ao criar seu modelo de regressão. Caso contrário, desejo-lhe boa sorte para dizer o que os 0 e 1 representam em 5 anos.
chl
Eu vi o gênero codificado no banco de dados como masculino, feminino e desconhecido.
Aksakal
2
Penso que esta questão é melhor considerada como duas questões confusas. A questão maior é por que usar a codificação 0-1 em vez de qualquer outra para um indicador ou variável dummy. A questão menor é por que usar 1 para homem e 0 para mulher, para a qual uma resposta curta é que muitas outras codificações estão em uso, incluindo o oposto de 1 para mulher, etc., e também várias codificações complexas que permitem sexo desconhecido e outras categorias de gênero.
Nick Cox

Respostas:

38

Razões para preferir a codificação zero-um de variáveis ​​binárias:

  • A média de uma variável zero-um representa a proporção na categoria representada pelo valor um (por exemplo, a porcentagem de homens).
  • Em uma regressão simples que x é a variável zero-um, a constante tem uma interpretação direta (por exemplo, a é a média de y para mulheres).y=uma+bxxumay
  • Qualquer codificação de uma variável binária em que a diferença entre os dois valores seja um (ou seja, zero-um, mas também um-dois) fornece uma interpretação direta do coeficiente de regressão (por exemplo, é o efeito de passar de mulher para homem em y)b

Pontos variados sobre a codificação de variáveis ​​binárias:

  • Qualquer codificação de uma variável binária que preserve a ordem das categorias (por exemplo, feminino = 0, masculino = 1; feminino = 1, masculino = 2; feminino = 1007, masculino = 2000; etc.) não afetará a correlação do variável binária com outras variáveis.
  • Quaisquer tabelas que relatam uma variável binária dessa maneira devem deixar claro como a variável foi codificada. Também pode ser útil rotular a variável pela categoria que representa o valor de uma: por exemplo, em y = a + b * Malevez de y = a + b * Gender.
  • Para algumas variáveis ​​binárias, uma categoria mais naturalmente deve ser codificada como uma. Por exemplo, ao observar a diferença entre tratamento e controle, o controle deve ser zero e o tratamento deve ser um, porque o coeficiente de regressão é melhor considerado como o efeito do tratamento.
  • Inverter as categorias (por exemplo, tornar feminino = 1 e masculino = 0, em vez de feminino = 0 e masculino = 1) inverte o sinal de correlações e coeficientes de regressão.
  • No caso de gênero, normalmente não há razão natural para codificar a variável feminino = 0, masculino = 1, versus masculino = 0, feminino = 1. No entanto, a convenção pode sugerir que uma codificação é mais familiar para um leitor; ou escolher uma codificação que torne o coeficiente de regressão positivo pode facilitar a interpretação. Além disso, em alguns contextos, um gênero pode ser considerado a categoria de referência; por exemplo, se você estava estudando o efeito de ser mulher em uma profissão dominada por homens sobre a renda, pode fazer sentido codificar masculino = 0 e feminino = 1, para falar do efeito de ser mulher.
  • Escalar os coeficientes de regressão de maneiras ponderadas pode ter um efeito poderoso na interpretabilidade dos coeficientes de regressão. Andrew Gelman discute isso bastante; veja, por exemplo, seu artigo de 2008, Scaling input regression, dividindo por dois desvios padrão (PDF) em Statistics in Medicine , 27, 2865-2873.
  • Codificar macho e fêmea como -1 e +1 é outra opção que pode fornecer coeficientes significativos (consulte "o que é codificação de efeitos" ).
Jeromy Anglim
fonte
18
Uh, eu sempre pensei que a razão natural para o código do sexo feminino = 0 e masculino = 1 era "anatomia" ...
Matt Parker
2
@matt funny. Eu nunca pensei nisso assim. Eu sempre fui influenciado pelas lentes do meu diploma de Artes, onde você é ensinado sobre como algumas feministas criticam ideologias que vêem as mulheres definidas pela falta de algo que os homens possuem. Através de tal lente de um, um pouco ironicamente, a codificação de gênero torna-se uma questão política :-)
Jeromy Anglim
13
Como hábito, eu sempre altero o nome de uma variável de gênero para algo como "Feminino", para deixar claro o que significa um esquema de codificação 0/1.
Fomite 8/10/11
Jeromy, você deseja observar a discussão stats.meta.stackexchange.com/a/4881/3277 sobre se precisamos de uma tag separada [dummy-variables] e dizer seu pró / contra em um comentário?
ttnphns
Considerando o par de cromossomos sexuais X e Y, as fêmeas têm XX e os machos têm cromossomos XY. Tomando X = 0 e Y = 1, podemos encontrar que feminino = XX = 00 = 0 e masculino = XY = 01 = 1.
Gürol Canbek
14

Isso facilita a interpretação dos resultados. Suponha que você tenha alguns dados de altura:

Woman A: 165
Woman B: 170
Woman C: 175
Man D: 170
Man E: 180
Man F: 190 

e você fez uma regressão do formulário Height = a + b * Gender + Residual.

Com a variável dummy 0,1, você obteria uma estimativa de a170 sendo a altura média das mulheres e bde 10 sendo a diferença entre as alturas médias dos homens e das mulheres.

Com a variável 1,2 dummy, você obteria uma estimativa ade 160, que é mais difícil de interpretar.

Henry
fonte
Obrigado. Estou aprendendo estatísticas na 'velocidade da luz' porque é uma exigência do meu novo emprego. Essa codificação ainda se aplicaria à análise de correlação.
Adhesh Josh
11
@ Adhesh Se você quer dizer correlação entre duas variáveis ​​quantitativas, não há problema de codificação: basta usar as medidas brutas. Se sua pergunta é sobre associação entre duas variáveis ​​qualitativas, considere fazer uma nova pergunta, mas, francamente, não há muita dificuldade nesse caso (a menos que você queira usar pontuações desigualmente espaçadas para categorias de variáveis, mas isso já foi respondido em outra parte). local).
chl
4
@Adesh Codificar um binário 1/2 ou 0/1 fará com que você não afete seu coeficiente de correlação. 0/1 também tem a vantagem de que a média da variável seria a porcentagem de homens ou mulheres, dependendo de qual é qual. Outros esquemas de codificação podem ser úteis para interpretar diferentes tipos de análise.
Michael Bishop
2

Eu supus que isso acontecesse porque o tipo de campo frequentemente usado para armazenar sexo é um campo de bits, e os campos de bits no SQL podem ter apenas os valores 0 ou 1. Quando você despeja os dados, eles saem como 0 ou 1, e é por isso que você obtém esses valores específicos.

Se você quisesse usar 1 e 2, teria que usar um tipo de campo maior, que ocuparia mais espaço e, assim, tornaria o banco de dados um pouco maior.

maldade
fonte
Como programador de SQL, essa foi minha primeira reação também. Não tenho certeza sobre quaisquer razões matemáticas puras para usar 0 e 1 para o sexo, mas sei que parte do ímpeto veio da necessidade de usar os menores tipos de dados possíveis. Os padrões de toda a indústria foram desenvolvidos a partir de costumes e todos se alinharam. Pode valer a pena verificar o histórico dos padrões ANSI para isso. Atualmente, há um esforço para que os DBAs usem bytes ou colunas inteiras pequenas para sexo, para indicar exceções incomuns, como "entidade corporativa" ou "indeterminada", mas muitos bancos de dados antigos ainda refletem o padrão antigo.
SQLServerSteve
2

Um professor sugeriu que codificássemos "biologicamente" as mulheres com 0 e os homens com 1 - para refletir a anatomia. Eu não acho que foi a coisa mais sensível ou PC a se dizer em uma classe, mas definitivamente fácil de lembrar quando se olha para um conjunto de dados cinco anos depois.

Cassie
fonte
Essa claramente não é a resposta "real" à pergunta (talvez isso seja mais um comentário do que uma resposta), mas o mnemônico é claramente aquele que muitas pessoas acham útil.
Silverfish
Mais "biológico" do que "anatômico", fui ensinado (embora eu suspeite que a "razão" tenha sido inventada em retrospecto, em vez de ser o original), que 0 é usado para mulheres porque é o sexo "padrão" - a crença é que, em No desenvolvimento embriológico, o caminho feminino é adotado, a menos que os processos intervenientes levem o embrião a se diferenciar no caminho masculino. Isso já foi uma crença generalizada, mas agora é considerada ultrapassada : o caminho feminino também precisa ser ativado ativamente.
Silverfish
11
Nesse caso, os homens não devem ser codificados como "00".
Harvey Motulsky,
1

Muitas boas razões postadas até agora, mas também devem ser reflexivas. Por que você começaria a contar com 1? Isso torna muitos algoritmos numéricos muito mais complicados. A rotulagem começa em 0, não em 1. Se você ainda não está convencido disso, tenho um bom exemplo de por que é importante em http://madhadron.com/?p=69

Quanto ao motivo pelo qual as mulheres são 0 e os homens são 1, lembremos que, durante grande parte de sua história, um estatístico provavelmente era um homem hetero. Quando solicitado a nomear um sexo, o primeiro a se lembrar foi 'mulher'. Tudo depois disso foi provavelmente acidente histórico e racionalização.

user873
fonte
-1

A norma ISO / IEC 5218 atualiza essa noção com o seguinte mapa:

0 = not known,
1 = male,
2 = female,
9 = not applicable.

Isso é particularmente útil em idiomas em que 0 coage para um valor falso, como no JavaScript:

if ( !user.gender ) {
    promptForGender();
}
Adam Eivy
fonte
10
É importante observar que esse tipo de padrão é realmente para transmissão e / ou armazenamento de dados. Não é adequado como padrão para análise de dados , que é especificamente sobre a questão.
whuber
-2

A maneira como vejo pessoalmente é fálicamente 0 representa tipicamente feminino, como é a forma do útero e considerado feminino ... em quase todas as ciências (ou seja, nos gráficos de linhagem de biologia / genética) círculos ou zeros representam fêmeas. Onde mais formas de arestas retas (triângulos, quadrados ou 1s) tendem a representar o sexo masculino. Esse simples entendimento facilitou sempre lembrar qual é qual para mim.

Embora no final do dia, se você é o único que codifica e analisa os dados, pode colocar os números desejados, geralmente desde que exista uma chave para qual variável dummy usada para a qual ela se torna irrelevante.

Jillian
fonte
2
Resposta estranha a uma pergunta boba.
Michael R. Chernick