답변:
현재 답변은 모두 좋은 조언을 제공합니다. 실제 널 (null) 또는 NaN을 저장할 수없는 경우에 잘 작동하는 일반적인 규칙 (과학 컴퓨팅 커뮤니티의) 은 필드가 보유 할 가장 작은 (가장 음수) 값을 사용합니다.
예 :
7.2 소수점 필드는 -9999.99만큼 작은 값을 보유 할 수 있습니다.
정수 래스터는 -32768만큼 작은 숫자를 보유 할 수 있지만 종종 (이진으로의 혐오 및 10의 친 화성으로 인해) -9999 값이 대신 사용됩니다.
float는 -10 ^ (38) 정도의 숫자를 보유 할 수 있습니다. 필드에 NaN을 넣을 수 없다면, 가장 작은 플로트를 찾거나 (고통) -10 ^ (38) 자체와 같은 것을 사용하십시오. 복식의 경우 -10 ^ (303)은 잘 작동하지만 -10 ^ (38)도 마찬가지입니다. null 값을 명확하게 표시하기에 충분히 크고 음수입니다.
이 규칙은 기억하기 쉽고, 일관성 있고, 적용하기 쉬우 며, 메타 데이터의 경우 보일러 플레이트 방식으로 문서화하기 쉽고, 실수가 거의 발생하지 않습니다. 실제 값은 널이 아닌 통계 요약 및 기타 계산을 손상시켜 문제점이있는 플래그를 발생시킵니다.
데이터가 데이터베이스에 있으면 NULL 값을 사용하는 것이 이상적입니다 .
"누락 된 정보 및 적용 할 수없는 정보"의 표현
그러나 이것은 클라이언트 응용 프로그램 및 코드에 문제를 일으킬 수 있으며 DBF에서 NULL이 지원되지 않는다고 생각합니다. 그 가치는 조직의 관습에 따라 다르다고 생각합니다. 어떤 더미 값을 선택하든 데이터 세트의 메타 데이터에 기록해야합니다.
데이터 세트의 포인트 중 Z 값이없는 경우 0을 사용할 수없는 이유를 알 수 없지만 혼동을 피하기 위해 데이터 세트의 Z 인식을 완전히 제거하는 것이 가장 좋습니다.
필자가 접한 대부분의 래스터는 부동 소수점 데이터에 대해 -9999.0을 사용하며, nodata / dummy 값이없는 이미지의 코드를 작성할 때 -dbl_inf를 사용합니다. 8 비트 RGB는 일반적으로 0 0 또는 255 255 255를 사용하거나 알파 또는 마스크 채널을 갖습니다.
GML 3 적용 범위 (현재 많은 지원은 없지만 WCS 2 사양이 비준되면 변경 될 수 있음)에는 "missing"및 "holded"와 같은 텍스트로 표시되는 몇 개의 더미 값이 있습니다.
내 경험에 따르면 모든 기본값은 도메인 별 또는 공급 업체별 경향이 있습니다. 소비자가 아닌 데이터 생산자 인 경우 숫자를 선택하여 고수하고 소비자가이를 인식하도록하십시오.
수학적 연산이 다른 NaN을 생성하거나 예외를 발생시키기 때문에 NaN 을 사용 합니다. 그렇게하면 가짜 값을 사용하기 때문에 엉망인 것을 감지 할 수 있습니다