데이터 세트가 있습니다. 결 측값이 많이 있습니다. 일부 열의 경우 결 측값이 -999로 대체되었지만 다른 열의 경우 결 측값이 'NA'로 표시되었습니다.
결 측값을 대체하기 위해 왜 -999를 사용합니까?
데이터 세트가 있습니다. 결 측값이 많이 있습니다. 일부 열의 경우 결 측값이 -999로 대체되었지만 다른 열의 경우 결 측값이 'NA'로 표시되었습니다.
결 측값을 대체하기 위해 왜 -999를 사용합니까?
답변:
이것은 컴퓨터 소프트웨어가 숫자 형 벡터로 숫자 형 벡터를 저장했을 때의 시작입니다. 실수는 "I 'm missing"이라는 의미를 갖지 않습니다. 따라서 초기 통계 소프트웨어가 "진정한"숫자와 결 측값을 구별해야 할 때, 그들은 -999 나 -9999와 같이 "명확하게"유효한 숫자가 아닌 것을 넣었습니다.
물론 결 측값에 대해 -999 또는 -9999가 "명백한"것은 아닙니다. 종종 유효한 값일 수 있습니다. 너가 아니라면이러한 값 명시 적으로 확인 분석에 모든 종류의 "관심있는"오류가있을 수 있습니다.
오늘날, 결 측값을 포함 할 수있는 수치 벡터는 내부적으로 "풍부한"수치 벡터, 즉 결 측값에 대한 추가 정보가있는 수치 벡터로 표시됩니다. 결 측값은 그대로 취급되고 실수로 유효한 것으로 취급되지 않기 때문에 이것은 물론 훨씬 낫습니다.
불행히도 일부 소프트웨어는 여전히 호환성을 위해 이러한 규칙을 사용합니다. 그리고 일부 사용자는 비공식 삼투를 통해이 규칙을 받아들이고 소프트웨어가 결 측값을 깨끗하게 입력하도록 지원하더라도 NA 대신 -999를 입력합니다.
도덕 : 결 측값을 -999로 인코딩 하지 마십시오 .
이러한 값은 데이터베이스에 대한 것입니다. 오래 전과 현재 대부분의 데이터베이스는 정수 값 데이터에 고정 된 자릿수를 할당했습니다. -999와 같은 숫자는 4 자, 5,999 자 등으로 저장할 수있는 가장 작은 숫자입니다.
(정의상 숫자 필드는 "NA"와 같은 영숫자를 저장할 수 없습니다. 일부 숫자 코드는 누락되거나 유효하지 않은 데이터를 나타 내기 위해 사용해야합니다.)
결 측값을 나타 내기 위해 저장할 수있는 가장 음수를 사용하는 이유는 무엇입니까? 실수로 올바른 숫자로 취급하면 결과가 크게 잘못되기를 원하기 때문입니다. 결 측값에 대한 코드가 현실적 일수록 더 안전합니다. 크게 잘못된 입력은 일반적으로 출력을 망가 뜨리기 때문입니다. (강력한 통계 방법은 예외입니다!)
그러한 실수는 어떻게 일어날 수 있습니까? 이것은 시스템간에 데이터가 교환 될 때 항상 발생합니다. -9999를 나타내는 시스템은 결 측값을 나타내며 CSV와 같은 대부분의 형식으로 데이터를 쓸 때 해당 값을 희미하게 출력합니다. CSV 파일을 읽는 시스템은 이러한 값을 누락 된 것으로 처리하기 위해 "알지"못하거나 "말리지"않을 수 있습니다.
또 다른 이유는 우수한 통계 데이터 및 컴퓨팅 플랫폼이 NaN, 실제 결 측값, 오버플로, 언더 플로, 비 응답 등 다양한 종류의 결 측값을 인식하기 때문입니다. 가능한 가장 음의 값 (예 : -9999, 9998, -9997 등)을 사용하면 테이블이나 배열에서 누락 된 모든 값을 쉽게 쿼리 할 수 있습니다.
또 다른 하나는 그러한 값이 일반적으로 극단적 인 이상치로 그래픽 디스플레이에 표시된다는 것입니다. 그래픽에서 눈에 띄도록 선택할 수있는 모든 값 중에서 가장 부정적인 값은 데이터에서 멀어 질 가능성이 가장 큽니다.
유용한 의미와 일반화가 있습니다.
이 유형의 표준 규칙을 채택하면 새로운 환경에서 고유 한 데이터베이스 소프트웨어를 설계 할 때 NoData 코드를 쉽게 발명 할 수 있습니다.
소프트웨어와 시스템이 전혀 실패하면 극적으로 실패하도록 설계하십시오. 최악의 버그는 간헐적이거나 무작위 적이거나 작은 버그입니다. 탐지되지 않고 추적하기 어려울 수 있기 때문입니다.
결 측값을 인코딩 하기 위해 무엇이든 사용할 수 있습니다 . R과 같은 일부 소프트웨어는 누락 된 데이터를 인코딩하기 위해 특수 값을 사용하지만 누락 된 데이터에 대한 특수 코드가없는 SPSS와 같은 소프트웨어 패키지도 있습니다. 두 번째 경우에는 해당 값 을 임의로 선택 해야 합니다. 무엇이든 선택할 수 있지만 일반적으로 데이터와 눈에 띄게 다른 값을 선택하는 것이 좋습니다 (예 : 데이터는 0 ~ 100 범위의 백분율이므로 누락 된 데이터를 인코딩하려면 999를 선택하거나 데이터는 사람의 나이이며 누락 된 관측 값에는 음수 값을 사용합니다). 그 뒤에 아이디어는 그렇게하면 뭔가 잘못되고 숫자가 합산되지 않는 경우 알 수 있다는 것입니다.
그러나 이러한 인코딩의 문제점은 실제로 특수 인코딩을 인식하지 못하고 쓰레기 결과를 초래한다는 것입니다.