シェープファイルを CSV に変換

このツールは、シェープファイルの属性テーブルを Excel や Google スプレッドシート用の CSV に書き出し、ポイントには X 列と Y 列、ラインとポリゴンには WKT 列を加えます。処理はブラウザー内で行われ、アップロードされません。EPSG:4326 を選ばない限り座標は元の座標系のままで、CSV には座標系が記録されず、フィールド名も10文字のままです。

うまく変換できないファイルがありましたか? [email protected] までメールでお知らせください。小さなサンプルファイルを添えていただけると、修正しやすくなります。

要点

シェープファイルを CSV に変換する理由

シェープファイルの属性テーブルは .dbf ファイルに入っていますが、今の Excel や Google スプレッドシートではきちんと開けません。CSV に変換すれば、その表をあらゆる表計算ソフト、データベース、スクリプトで読める形にでき、1つのフィーチャーが1行になります。ポイントのシェープファイルには座標の X 列と Y 列が付くので、位置情報もそのまま使えます。ラインとポリゴンは、ジオメトリが WKT テキストとして書き出されます。座標はシェープファイル本来の座標系(UTM ゾーンのメートルや State Plane のフィートなど)のまま残すことも、変換の途中で経度・緯度に変えることもできます。シェープファイルは .zip でも個別のファイルでもアップロードでき、複数のシェープファイルからはそれぞれ1つの CSV ができます。処理はすべて GDAL を使ってブラウザー内で行われます。

シェープファイルを CSV に変換する方法

  1. シェープファイルを含む .zip をドロップするか、.shp、.shx、.dbf、.prj の各ファイルをまとめて選択します。
  2. 「CSV の形式」を選び、経度・緯度にしたい場合は「出力の座標系」に EPSG:4326 と入力します。
  3. 「CSV に変換」をクリックし、ファイルを Excel やデータベースで開きます。

知っておきたいこと

座標はシェープファイルの座標系のままです

初期設定では、X と Y は .prj ファイルに書かれた座標系で出力されます。たとえば ETRS89 / UTM ゾーン 32N のシェープファイルなら、724787.13 や 6176406.30 のようなメートル単位の東距と北距になります。GPS と同じ経度・緯度が必要なら、出力の座標系に EPSG:4326 と入力してください。CSV 自体には座標系を保存できないため、数値がどの座標系のものかは変換後のメッセージでお知らせします。

ラインとポリゴンは WKT になります

道路や区画を2つの列に収めることはできないため、ラインやポリゴンのシェープファイルでは、最初の列が WKT という名前になり、POLYGON ((...)) のようにジオメトリ全体がテキストで入ります。Excel では長いテキストとして表示され、セルは 32,767 文字で切れます。GIS ソフトやデータベースは、これをジオメトリとして読み戻せます。

短いフィールド名はそのままです

シェープファイルのフィールド名は最大10文字なので、CSV のヘッダーも DESCRIPTIO や POP_2020 のような省略された名前のままです。データを知らない人に渡す表なら、表計算ソフトで列名を変えてください。.dbf の日付は 2024-05-01 の形で書き出されます。

特殊文字について

テキストは .cpg ファイルの文字コードで読み込みます。.cpg がない場合、正しい UTF-8 は UTF-8 として、それ以外は .dbf ヘッダーのコード、または Windows-1252 として読み込みます。書き出しは UTF-8 です。é、ü、ø などの文字を Excel で正しく表示するには、Excel 用の形式のどちらかを選んでください。セミコロン区切りの形式は、小数点にカンマを使う国の Excel に向いています。

複数のシェープファイルをまとめて変換

複数のシェープファイルを含む .zip からは、シェープファイルごとに1つずつ CSV が入った zip ができ、ファイル名はシェープファイルの名前になります。シェープファイルの横にある空間インデックス、メタデータ、スタイルのファイルは無視されます。

ファイル形式について

Shapefile

Esri シェープファイルは、GIS で最も広く使われているベクター形式です。「シェープファイル」は実際には同じ名前のファイルの集まりで、 .shp にジオメトリ、.shx にインデックス、.dbf に属性テーブルが入り、任意の .prj に座標系、.cpg に文字コードが入ります。

  • 少なくとも .shp、.shx、.dbf が必要です。まとめて選択するか、1つの .zip にしてください。
  • フィールド名は10文字まで、テキスト値は254文字までです。
  • 1つのシェープファイルに入れられるジオメトリタイプは1種類だけです(ポイント、ライン、ポリゴンのいずれか)。
  • .prj ファイルがないと、座標系が不明になります。

CSV

CSV(comma-separated values)は、Excel、Google スプレッドシート、あらゆるデータベースで開けるプレーンテキストの表です。 独自のジオメトリタイプはなく、位置は緯度と経度のような2つの座標列、または WKT テキストの列として保存されます。

  • ポイントは2つの列(X と Y、または経度と緯度)で表せます。ラインとポリゴンには WKT 列が必要です。
  • 座標系はファイルに保存されないため、別途控えておいてください。
  • 区切り文字に標準はありません。Excel は言語設定によってカンマまたはセミコロンを使います。
  • すべての値はテキストです。0800 を数値と見なすか郵便番号と見なすかは、読み込むプログラム次第です。

よくある質問

シェープファイルはアップロードされますか?

いいえ。ファイルの読み込みも変換も、お使いのパソコン上のブラウザーが行います。

.dbf ファイルだけを Excel で開けませんか?

現在の Excel は .dbf 形式で保存できなくなっており、直接開くと特殊文字や日付が崩れることがあります。CSV ならこうした問題を避けられます。

座標なしで表だけ欲しいときは?

通常どおり変換し、表計算ソフトで X 列と Y 列、または WKT 列を削除してください。属性の列はどちらの場合も同じです。

CSV をシェープファイルに戻せますか?

X 列と Y 列のある CSV は、QGIS で区切りテキストレイヤーとして読み込み、シェープファイルとして保存できます。CSV には座標系が記録されないため、元のシェープファイルが残っていればそちらを使ってください。

使い方ガイド