概要
GISの操作は、シェープファイルよりジオデータベース形式の方が便利です。
処理が早く、フィールド名の文字数制限などもないため、
Esriも基本的にジオデータベース形式での操作を推奨しているようです。
ただ、保管されているGISデータはシェープファイルである場合が多いです。
そこで、シェープファイルを一括でジオデータベース形式に変換してみます。
環境
- ArcGIS Pro 2.1
- Jupyter Notebook(ArcGIS Pro 2.1 に付属)
手順
1. 出力先のジオデータベースを作成
ここでは work.gdb
とします。
2. Jupyter Notebook で処理を実行
以下にコードを示します。ファイル名や出力先は変更してください。
import arcpy # 出力するフィーチャクラスが存在する場合は上書きするように設定 arcpy.env.overwriteOutput = True # 変換するシェープファイルのリスト in_features = [ 'shp/sample1.shp', 'shp/sample2.shp', 'shp/sample3.shp', 'shp/sample4.shp', 'shp/sample5.shp' ] # 変換後のフィーチャクラス名 out_names = [ 'out1', 'out2', 'out3', 'out4', 'out5' ] # 出力先のファイルジオデータベース out_location = 'work.gdb' # シェープファイルをジオデータベース フィーチャクラスに変換 for shp, out_name in zip(in_features, out_names): arcpy.FeatureClassToFeatureClass_conversion(shp, out_location, out_name)
気になったこと
出力先がファイルジオデータベースの場合は、FeatureClassToGeodatabase_conversion
も使えます。
ただし、 arcpy.env.overwriteOutput = True
としても上書きされません。