重要
翻訳は あなたが参加できる コミュニティの取り組みです。このページは現在 81.25% 翻訳されています。
17.11. ベクター計算機
注釈
このレッスンでは、ベクター演算を使用して、数式に基づいてベクターレイヤーに新しい属性を追加する方法について説明します。
We already know how to use the raster calculator to create new raster layers using mathematical expressions. A similar algorithm is available for vector layers, and generates a new layer with the same attributes of the input layer, plus an additional one with the result of the expression entered. The algorithm is called Field calculator and has the following parameters dialog.
注釈
インターフェイスが大幅に変更されたプロセッシングの新しいバージョンでは、より強力で使いやすいです。
ここでは、そのアルゴリズムを使用してのいくつかの例があります。
まずは、国勢調査を表し、各ポリゴン中の白人の人口密度を計算してみましょう。属性テーブル内の二つのフィールド、すなわち WHITE と SHAPE_AREA がそのために使用できます。それらを割り算し、百万で乗算する(平方キロメートルあたりの密度にするため)必要があるだけなので、対応するフィールドに次の式を使用できます
( "WHITE" / "SHAPE_AREA" ) * 1000000
以下に示すようにパラメーターダイアログが満たされる必要があります。
これは WHITE_DENS という名前の新しいフィールドを生成します。
今度は、男性人口が女性人口に比して数値的に優位にあるかどうかを示す新しいものを作成するために、 MALES と FEMALES フィールド間の比率を計算してみましょう。
次の式を入力します。
"MALES" / "FEMALES"
This time the parameters window should look like this before pressing the OK button.
両方のフィールドが整数型であるため、以前のバージョンでは、結果が整数に切り捨てられることになります。この場合、式は次のようになります。私たちは浮動小数点数に結果を望んでいることを示すために 1.0 * "MALES" / "FEMALES" 。
次の式を使用して、 male または female テキスト文字列の代わりに、それらの比の値で新しいフィールドを持つように、条件付きの関数を使用できます:
CASE WHEN "MALES" > "FEMALES" THEN 'male' ELSE 'female' END
パラメーターウィンドウは、次のようになります。
A python field calculator is available in the Advanced Python field calculator, which will not be detailed here