데이터 분석을위한 코딩 논리를 이해합니다. 아래의 내 질문은 특정 코드 사용에 관한 것입니다.
- 성별이 여성의 경우 0, 남성의 경우 1로 코딩되는 이유가 있습니까?
- 이 코딩이 왜 '표준'으로 간주됩니까?
- 이것을 Female = 1 및 Male = 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 개의 더미 변수를 사용하면 a
해석하기 어려운 160 의 추정치를 얻을 수 있습니다.
성별을 저장하는 데 자주 사용되는 필드 유형이 비트 필드이고 SQL의 비트 필드는 0 또는 1의 값만 가질 수 있다고 가정했습니다. 데이터를 덤프하면 0 또는 1로 나오고 그래서 그 특별한 가치를 얻는 이유입니다.
1과 2를 사용하려면 더 큰 필드 유형을 사용해야하므로 더 많은 공간을 차지하므로 전체 데이터베이스를 약간 더 크게 만들어야합니다.
교수는 해부학을 반영하기 위해 여성이 0이고 남성이 1 인 "생물학적으로"코딩 할 것을 제안했습니다. 수업에서 말하는 것이 가장 민감한 PC라고 생각하지는 않지만 5 년 후 데이터 세트를 볼 때 기억하기 쉽습니다.
많은 이유가 지금까지 게시되었지만 반복적이어야합니다. 왜 1부터 계산을 시작 하시겠습니까? 많은 숫자 알고리즘을 훨씬 더 복잡하게 만듭니다. 라벨링은 1이 아닌 0에서 시작합니다. 아직 확신이 없다면 http://madhadron.com/?p=69 에서 중요한 이유를 알 수 있습니다 .
여성이 0이고 남성이 1 인 이유에 관해서는, 대부분의 역사에서 통계학자는 스트레이트 남성 일 가능성이 있음을 기억하십시오. 섹스의 이름을 물었을 때 가장 먼저 떠오르는 것은 '여자'였습니다. 그 이후의 모든 것은 아마도 역사적인 사고와 합리화 일 것입니다.
ISO / IEC 5218 표준 업데이트 다음지도이 개념 :
0 = not known,
1 = male,
2 = female,
9 = not applicable.
이것은 JavaScript와 같이 0이 잘못된 값으로 강제되는 언어에서 특히 유용합니다.
if ( !user.gender ) {
promptForGender();
}
제가 개인적으로 보는 방식은 전적으로 0입니다. 자궁의 모양이기 때문에 일반적으로 여성을 나타냅니다. 그리고 거의 모든 과학에서 (즉, 생물학 / 유전학 혈통 차트에서) 원형 또는 0은 여성을 나타냅니다. 직선 모양 (삼각형, 사각형 또는 1)이 남성 성별을 나타내는 경향이있는 경우. 이 간단한 이해는 어느 것이 나에게 어느 것인지 항상 기억하기 쉬워졌습니다.
하루가 끝나고 데이터를 직접 코딩하고 분석하는 경우 원하는 더미 변수에 대한 키가있는 한 일반적으로 원하는 숫자를 입력 할 수 있지만 관련이 없습니다.