QGISを使用して属性テーブルのすべてのnull値をゼロに置き換えますか?


13

属性テーブルに多くのヌル値を持つ新しい列があり、それらすべてをゼロに置き換えたいと思います。

フィールド電卓でそれを行うにはどうすればよいですか?

QGIS 1.8を使用しています

回答:


16

QGISで属性テーブルを開き、[式を使用してフィーチャを選択]ボタンをクリックします。シェイプファイル内のフィールドのすべてのnullレコードを検索するには、クエリは次のようになります。

"field_name" is null

[フィールドと値]リストでフィールド名を確認し、取得するフィールドを[式]ボックスにダブルクリックします。

レコードの新しいフィルターリストを必ず選択してください。次に、属性テーブルに戻り、[フィールド計算機]ボタンをクリックします。[既存のフィールドを更新]ボックスをオンにします-[選択した更新のみ]チェックボックスがオンになっていることを確認してから、更新するフィールドをドロップダウンボックスから選択します。式ボックスに0を入力し、[OK]をクリックして完了です。


3

これは、フィールド計算機で直接実行できます。

  • フィールド計算機を開く
  • [既存のフィールドを更新]ボックスをオンにします
  • 作業するフィールドを選択します
  • 式ボックスに次の式を入力します:if("fieldname" is null, 0, "fieldname")fieldname実際のあなたの名前フィールドに置き換えます

何か問題が発生した場合に備えて、古いフィールドを上書きするよりも、新しいフィールドを作成する方が明らかに安全です。


0

シェイプフォルダーの–.dbf–ファイルを編集し、そこに新しい列、行などを挿入できることに気付きました。マップのマスターテーブルを実現します。LATINAMERICA.dbfというファイルを見つけて、LibreOfficeで開きます(少なくとも "Spreadsheets"で開き、完全に機能します)。それを編集して、同じ名前で同じフォルダーに.dbfとして保存します。次に、マップを再度開くと、マスターテーブルに変更が加えられます...それは私にとってはうまくいきました(Qgis WIEN 2.8)


1
それは通常、問題を引き起こす可能性が編集(ソートなど)間違った操作など自分自身での.dbfに悪いアイデアだ、見gis.stackexchange.com/questions/55544/...
JR
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.