QGISを使用して非空間CSVファイルを空間データ(シェープファイル)に結合しますか?


40

フィールドに郵便番号データを含むCSVファイルがありますが、それは非空間的です。たとえば、EastingとNorthingはありません。

フィールドに郵便番号といくつかの追加データを含むシェープファイルがあります。

属性(郵便番号フィールド)に基づいてCSVをシェープファイルに結合したい。ArcMapでこれを実行できることは知っていますが、QGISで同じことをどのように実現できますか?


バージョン2.3.0-Masterでこれをどのように行いますか?

バージョン2.8(および以前の一部の以前のバージョンでも)では、これを機能させることはできません。一致する英国の郵便番号データに参加しようとしています。mmqgisを使用すると、「Postcodeレイヤーにジオメトリがありません」または非常に類似したエラーが表示されます。QGIS結合機能を使用して、データの結合を取得しましたが、CSVにジオメトリが追加されていません。この問題に非常に不満を感じています。
ロストラニミン

1
こんにちは@Rostranimin。正しい方法、つまり、シェープファイルの[プロパティ]ダイアログからCSVデータをシェープファイルデータに結合していますか?
ストラグ

回答:


28

簡単な方法は、ポストコードフィールドによってcsvファイルをシェープファイルに結合するmmqgisプラグインを使用することです

ここに画像の説明を入力してください


4
おいおい!私のファイルブラウザのプラグインがあります:D
ネイサンW

1
良い仕事ネイサン-それをたくさん使用して、うまくいきます。
マッパーズ

1
これはうまく機能しており、必要なものだけです。どうもありがとう!
-gisuser

こんにちは、私はそれをしようとしますが、次のエラートレースバック(最新の呼び出しは最後)を取得します。 = csv.Sniffer()。sniff(infile.read(1024))ファイル「C:\ PROGRA〜1 \ QUANTU〜1 \ apps \ Python25 \ lib \ csv.py」、160行目、スニフ発生エラー、「Could」エラー:区切り文字を決定できませんでした

@Carlos:CSVファイルで使用する区切り文字は何ですか?
暗闇

39

QGISバージョン1.7の今後のリリースでは、レイヤープロパティに結合機能が組み込まれます。結合の速度も非常に印象的です。

参加する手順:

  1. オープンベクトルアイコンを使用してcsvを開きます。
  2. 結合するレイヤー(マップ)の[プロパティ]タブを開きます
  3. [参加]タブをクリックし、[+]ボタンを押します
  4. csvレイヤーと、結合する2つの列を選択します。
  5. プロパティダイアログで[OK]をクリックします。

QGISに参加する


いいね ただし、Add Vectorレイヤーを使用してcsvファイルを追加することは直感的ではありません。これをもっと早く知りたいと思います。
RK

1
4年後、これはまだMMQGISプラグインIMEほど信頼性の高い動作をしていません。
camdenl

1
これは、MMプラグインよりもはるかに高速でした。データレイヤーを追加するには、layer-> add delimited text-> csv
例による統計の学習

0

データをMS Accessにロードすると、ftoolsを使用してMS Accessテーブルに参加できます。

qgisプラグインインストーラーを起動し、サードパーティリポジトリを有効にすると、ftoolsが利用可能になります。

次に、fTools> Data Management tools> Join Attributesに移動してプラグインツールを使用します


ありがとう、私は特にそこに着くために別のプログラムを使いたくありませんが、他のすべてが失敗した場合、私はこれを試します。
-gisuser

0

ベクターデータを操作するためのfToolsプラグインは、非空間であっても「属性のデータを結合する」同じオプションを提供します。


空間データをターゲットレイヤーとしてのみ使用しているようです。この場合、空間レイヤーからcsvにフィールドを追加します。提案をありがとう。
-gisuser
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.