標準化された、または「最も使用されている」ダミーZ値はありますか?


10

2Dデータと3Dデータの両方を作成してインポートすると、座標セットのZ値がないという状況に何度も遭遇しました。Z座標の値が範囲外(-99、-9999、-infなど)のようです)または、ダミーの Z座標を作成する必要があります。

私の質問に対する答えは次のとおりです。

「あなたのケースでは明らかに範囲外の値を使用するだけです。」

しかし、その答えは、GISコミュニティがダミーの Z座標に対して標準化された値または最も頻繁に使用される値を持っているかどうかを疑問に思います。

回答:


5

現在の返信はすべて良いアドバイスを与えます。真のnullまたはNaNを格納できない場合にうまく機能する(科学計算コミュニティーからの)一般的なルールは、フィールドが(有効に)保持する最小(最も負の)値を使用することです。

例:

  • 7.2 10進数フィールドは、-9999.99までの小さい値を保持できます。

  • 整数ラスターは-32768までの小さい数値を保持できますが、多くの場合(バイナリへの嫌悪と10進数への親和性のため)代わりに値-9999が使用されます。

  • floatは-10 ^(38)の数値を保持できます。フィールドにNaNを配置できない場合は、収まる最小の浮動小数点数を見つけるか(苦痛です)、または-10 ^(38)自体のようなものを使用します。倍精度浮動小数点数の場合、-10 ^(303)は正常に機能しますが、-10 ^(38)も機能します。これは、null値の明確なマーカーとして機能するのに十分な大きさで負の値です。

このルールは覚えやすく、一貫性があり、適用しやすく、定型的な方法で(メタデータの場合)文書化が容易であり、不注意によるエラーを引き起こすことはほとんどありません(通常、最も負の数はデータとは非常に異なるため、データとして誤用されるためです。 nullの代わりに実際の値を使用すると、統計の要約やその他の計算が破損し、問題があることを示すフラグが立てられます)。


5

データがデータベースにある場合は、理想的にはNULL値を使用します

「欠落している情報と不適切な情報」の表現

ただし、これによりクライアントアプリケーションとコードで問題が発生する可能性があり、DBFでNULLがサポートされているとは思いません。その値が何であるべきかは、組織の慣習によって異なります。どのダミー値を選択する場合でも、データセットのメタデータに記録されていることを確認してください。

データセットのどのポイントにもZ値がない場合、なぜ0を使用できなかったのかわかりませんが、その場合は混乱を避けるためにデータセットのZ認識を完全に削除するのが最善です。


2
+1ほとんどのESRI製品および他のほとんどのソフトウェアは、数値dBaseフィールドのnullをゼロとして読み取ります。これは致命的であるため、通常、.dbfファイル(シェープファイルを含む)で明示的なnullコーディングを使用することが重要です。
whuber

4

私が出会ったほとんどのラスターは、慣習として浮動小数点データに-9999.0を使用します。GDALは、nodata / dummy値を持たない画像のコードを記述しているときに-dbl_infを使用します。8ビットRGBは通常0 0 0または255 255 255を使用するか、アルファまたはマスクチャネルを持っています。

GML 3カバレッジ(現時点ではあまりサポートされていませんが、WCS 2仕様が承認されると変更されます)には、「欠落」や「保留」などのテキストとして表されるいくつかのダミー値があります。

私の経験では、デフォルトはドメイン固有またはベンダー固有の傾向があります。あなたがコンシューマーではなくデータのプロデューサーである場合は、番号を選択してそれに固執し、コンシューマーがそれを認識していることを確認してください。


2

数学演算は他のNaNを生成するか、例外をスローするため、私はNaNを使用します。そうすれば、偽の値を使用しているために、めちゃくちゃになっていることをはっきりと検出できます


2
NaNは(浮動小数点値を使用した)計算には問題ありませんが、NaNを多くのデータベースまたはGISデータ形式で格納することはできません
geographika

2
+1 @geographikaは正しいです。それにもかかわらず、計算を台無しにする値を使用することについてのポイントは優れたものです。
whuber

整数の場合、NaNを使用できます:numeric_limits <int> :: quiet_NaN()
Ragi Yaser Burhum

また、私は、ジオメトリのZ値に関連するNaNの使用を推奨しました。だから、関係なく、値がデータベース内にあるかどうかの、私見それは幾何学的にシリアル化する必要がある-それだけで動作するはずですので...
Ragi Yaser Burhum
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.