データのバッチ インポート (Batch Import Data) (インテリジェンス)

概要

KML、KMZ、シェープファイル、Excel ワークシート、表形式のテキスト ファイル、GeoJSON、GPX ファイルのディレクトリを、1 つのジオデータベースに格納されたフィーチャクラスにインポートします。

使用法

  • デフォルトでは、KML (*.kml)、KMZ (*.kmz)、シェープファイル (*.shp)、Excel ワークブック (*.xlsx および *.xls)、表形式のテキスト ファイル (*.csv、*.txt、*.tab)、GeoJSON ファイル (*.geojson)、GPX ファイル (*.gpx) について、[入力データ] の場所が再帰的に検索されます。[フィルター] パラメーターを使用して、インポートするファイルを絞り込むことができます。

  • ラスター、または KML や KMZ ファイルに含まれるグラウンド オーバーレイは、[ターゲット ジオデータベース] 内でモザイク データセットに変換されます。モザイク データセットが参照するソース ラスターは、モザイク データセットに基づく名前のサブフォルダーにネイティブ形式で格納されます。これは、ターゲット ジオデータベースと同じ場所にあります。これらのファイルの名前は、[ターゲット ジオデータベース] の後に _Rasters が付きます。たとえば、[ターゲット ジオデータベース]C:\Data\OperationalData.gdb の場合、C:\Data の下に OperationalData_Rasters という名前のフォルダーが作成されます。

  • ファイルをエンタープライズ ジオデータベースにインポートしている場合は、[ターゲット ジオデータベース] パラメーターでデータベース コネクション ファイル (*.sde) が UNC パスとして指定されていることと、そのパスにエンタープライズ ジオデータベースからアクセスできることを確認してください。

  • KML および OGC (Open Geospatial Consortium) KML 標準の KMZ バージョン 2.2 までの KMZ の入力が一般的にサポートされています。(ジオコーディングによる) アドレス タブを使うポイント位置はサポートされていません。有効な緯度位置と経度位置がソース KML 内に必要です。

  • 表形式のテキスト ファイルで使用される標準的な区切り記号は、拡張子が *.csv または *.txt のファイルではカンマ、拡張子が *.tab のファイルではタブです。入力テーブルで標準以外の区切り記号を使用するには、schema.ini ファイルを使用して区切り記号を指定する必要があります。詳細については、Microsoft ドキュメントの「Schema.ini ファイル (テキスト ファイル ドライバー)」をご参照ください。

  • 入力 Excel ワークシートおよび表形式のテキスト ファイルの場合、ポイント ジオメトリのみがサポートされています。

  • GeoJSON の仕様は、複数のジオメトリ タイプをサポートしています。入力 GeoJSON ファイル内にあるジオメトリ タイプごとに、別々のフィーチャクラスが SourceGeoJSONFile_GeometryType という命名規則で作成されます。たとえば、GeoJSON ファイルの名前が World Airports.geojson で、ポイント、マルチポイント、ポリライン、ポリゴンのジオメトリ タイプが含まれている場合、フィーチャクラスの名前は、World Airports_PointsWorld Airports_MultipointWorld Airports_PolylinesWorld Airports_Polygons になります。

  • このツールを実行するときは、座標系に次の注意事項があります。

    • シェープファイル、KML、KMZ、GeoJSON、GPX ファイルの場合、出力データセットは入力データセットと同じ座標系になります。KML および GPX の仕様は、入力データセットの座標系が GCS WGS1984 であると規定しています。
    • Excel ワークブックおよび表形式のテキスト ファイルの場合、入力の座標系は GCS WGS1984 で、経度と緯度の座標値は度 (10 進) であると想定されます。

  • フィーチャの入力経度と緯度の座標のいずれかが無効 (NULL または数値以外の値) である場合、対応するフィーチャは NULL ジオメトリを持ちます。[ジオメトリのチェック (Check Geometry)] ツールを使用して、出力に NULL ジオメトリがあるかどうかを確認できます。

  • 表形式のテキスト ファイル (*.csv、*.txt、*.tab) および Excel ワークシートは、経度と緯度の列を持つ必要があります。有効な経度の列は、longitudelonglonx_coordinatex_coordx です。有効な緯度の列は、latitudelaty_coordinatey_coordy です。ソースに複数の有効な緯度と経度の列がある場合、最初の有効な列が使用されます。

  • Excel ワークブック内のすべてのワークシートがインポートされます。

  • シンボルは、ソース データ ファイル内のシンボルに基づいて、マップに追加される出力レイヤーに次のように適用されます。

    メモ:
    シンボルを維持するには、ツールの実行時に ArcGIS Pro プロジェクト内にアクティブなマップが存在する必要があります。ツールを ArcGIS Pro プロジェクトの外部で (つまり、スタンドアロンの Python スクリプトから) 実行している場合、シンボルは維持されません。
    • KML または KMZ ファイルから作成された出力レイヤーの場合、シンボルはソース KML または KMZ ファイルから抽出され、出力レイヤーに適用されます。このシンボルは、ソース KML または KMZ ファイルと同じフォルダー内にあるレイヤー ファイル (*.lyrx または *.lyr) を指定することでオーバーライドできます。このレイヤー ファイルの名前は、ソース データ ファイルと同じベース名に、アンダースコア (_) とオーバーライドされるレイヤーのジオメトリ タイプ (ポイント、ポリライン、ポリゴン) が付きます。たとえば、KML ファイルの名前が World Airports.kml で、ポイント、ライン、ポリゴンの各フィーチャが含まれていて、すべてのジオメトリのシンボルをオーバーライドする場合、レイヤー ファイルの名前は、World Airports_Points.lyrxWorld Airports_Polylines.lyrxWorld Airports_Polygons.lyrx になります。ジオメトリ タイプの値は、大文字と小文字が区別されます。指定したジオメトリ タイプのレイヤー ファイルが存在しない場合は、ソース KML または KMZ ファイルのシンボルが出力レイヤーに適用されます。
    • KML または KMZ ファイル以外のソースから作成された出力レイヤーの場合、シンボルは、レイヤー ファイル (*.lyrx または *.lyr) がソース データ ファイルと同じフォルダー内に存在する場合に出力レイヤーに適用されます。レイヤー ファイルには、Excel ワークシートと GeoJSON ファイルを除いて、ソース データ ファイルと同じベース名が付きます。Excel ワークシートの場合、レイヤー ファイルの名前は、ソース データ ファイルと同じベース名に、アンダースコア (_) とワークシート名が付きます。たとえば、Excel ファイルの名前が World.xlsx で、Cities (2018) というワークシートが含まれている場合、そのレイヤー ファイルの名前は World_Cities (2018).lyrx または World_Cities (2018).lyr になります。GeoJSON ファイルの場合、レイヤー ファイルの名前は、ソース データ ファイルと同じベース名に、アンダースコア (_) と出力ジオメトリ タイプ (ポイント、マルチポイント、ポリライン、ポリゴン) が付きます。レイヤー ファイルが存在しない場合は、デフォルトのシンボルが出力レイヤーに適用されます。

構文

arcpy.intelligence.BatchImportData(in_data, target_gdb, {filter}, {include_sub_folders}, {include_groundoverlay})
パラメーター説明データ タイプ
in_data
[in_data,...]

ジオデータベース フィーチャクラスに変換するデータ ファイルを含むディレクトリ。

Folder
target_gdb

出力フィーチャクラスを格納するターゲット ジオデータベース。

Workspace
filter
(オプション)

ジオデータベースに追加するデータに対するフィルター。フィルターのワイルドカード文字は、入力データの絶対パスに対して機能します。以下に示します。

  • * - 任意の文字と一致します
  • ? - 1 文字と一致します
  • [ 範囲 ] - 範囲内の 1 文字と一致します
  • [! 範囲 ] - 範囲内にない任意の文字と一致します
フィルターに複数のパターンを追加するには、各パターンを垂直バー/パイプ区切り記号 (|) で区切ります。区切り記号の前後にスペースは入りません。パターンの比較では、大文字と小文字は区別されません。*airport.shp*AIRPORT.SHP*Airport.shp のパターンは、同じシェープファイルをインポートします。

以下にフィルターの例を示します。

  • すべてのシェープファイルをインポートするには、*.shp を使用します。
  • すべてのシェープファイルとすべての KML ファイルをインポートするには、*.shp|*.kml を使用します。
  • ファイル パスまたはファイル名に airport があるすべてのファイルをインポートするには、*airport* を使用します。
  • ファイル パスまたはファイル名に airport があるすべての GeoJSON ファイルをインポートするには、*airport*.geojson を使用します。
  • 名前に airport と 2 文字が付加されたすべての KMZ ファイルをインポートするには、*airport??.kmz を使用します。
  • ファイル パスまたはファイル名に 1990 ~ 1997 が含まれるすべてのファイルをインポートするには、*199[0-7]* を使用します。
  • ファイル パスに airfacilities というフォルダー名が含まれるすべてのシェープファイルをインポートするには、*\airfacilities\*.shp を使用します。

String
include_sub_folders
(オプション)

サブフォルダーを再帰的に検索するかどうかを指定します。

  • SUBFOLDERSすべてのサブフォルダーを検索します。これがデフォルトです。
  • NO_SUBFOLDERSトップレベル フォルダーのみを検索します。
Boolean
include_groundoverlay
(オプション)

KML または KMZ グラウンド オーバーレイ (ラスターや航空写真など) を出力に含めるかどうかを指定します。

KMZ がラスター画像を提供するサービスを参照している場合は注意してください。ツールはラスター画像を、使用可能なすべてのスケールに変換しようとします。この処理は時間がかかったりサービスをハングアップさせたりするかもしれません。

  • GROUNDOVERLAYグラウンド オーバーレイが出力に含まれます。これがデフォルトです。
  • NO_GROUNDOVERLAYグラウンド オーバーレイが出力に含まれません。
Boolean

派生した出力

名前説明データ タイプ
out_geodatabase

更新されたターゲット ジオデータベース。

ワークスペース

コードのサンプル

BatchImportData (データのバッチ インポート) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで BatchImportData 関数を使用する方法を示しています。

import arcpy 
arcpy.BatchImportData_intelligence("c:/data/sourcedata", "c:/data/output.gdb", "", "SUBFOLDERS", "NO_GROUNDOVERLAY")
BatchImportData (データのバッチ インポート) の例 2 (スタンドアロン スクリプト)

次の Python スクリプトは、スタンドアロン スクリプトで BatchImportData 関数を使用する方法を示しています。

# Name: BatchImportData_Example2.py
# Description: Imports all shapefiles with 'airport' in the file name or file
#              path within a directory to feature classes in a single geodatabase.
# Requirements: Standard or Advanced license
# Import system modules
import arcpy
# Set local variables
in_data = ["c:/data/sourcedata"]
target_gdb = r"\\data\operationaldata.sde" 
filter = "*airports*.shp" 
include_sub_folders = "NO_SUBFOLDERS" 
# Execute BatchImportData
arcpy.BatchImportData_intelligence(in_data, target_gdb, filter, include_sub_folders)

環境

このツールは、ジオプロセシング環境を使用しません。

ライセンス情報

  • Basic: いいえ
  • Standard: はい
  • Advanced: はい

関連トピック