NetCDF プロファイル → フィーチャクラス (NetCDF Profiles To Feature Class) (不連続なサンプリング ジオメトリ) (マルチディメンション)

サマリー

netCDF ファイルのプロファイルからフィーチャクラスを作成します。 Climate and Forecast (CF) メタデータ規則では、プロファイルは不連続なサンプリング ジオメトリ (DSG) のタイプのことを指します。

不連続なサンプリング ジオメトリ (DSG) ツールの仕組みの詳細

使用法

  • Climate and Forecast (CF) メタデータ規則では、プロファイルとは固定水平位置と固定時間における垂直線沿いのデータ ポイントの順序付けられたセットを指します。

  • 不連続なサンプリング ジオメトリ (DSG) データセットには、データがサンプリングされる時空間リージョンよりもディメンション性が低いという特徴があります。

  • 入力 netCDF ファイルは Climate and Forecast (CF) に準拠している必要があります (CF 1.6 以降)。 CF 規約は、各変数、およびデータの空間プロパティと時間プロパティで表されるデータを説明するメタデータを定義します。

  • 入力 netCDF ファイルが CF に準拠していない場合は、追加または変更された属性を使用して [入力 Climate and Forecast メタデータ] (Python では in_cf_metadata) ファイルを指定できます。 [入力 Climate and Forecast メタデータ] ファイルは拡張子が .ncml の XML ファイルです。 このメタデータ ファイルの属性によって、netCDF ファイルのメタデータが拡張またはオーバーライドされます。 入力 netCDF ファイルにグリッド マッピング変数がない場合は、[入力 Climate and Forecast メタデータ] ファイルを使用して指定することもできます。

  • DSG フィーチャ タイプは、cf_role 属性でマークされたインスタンス ID で区別されます。 スキーマが同じ複数の netCDF ファイルを、一意の InstanceID フィールドがある 1 つのフィーチャクラスに変換できます。 各 netCDF ファイルには同じ cf_role 属性でマークされた変数が必要です。これらは複数のファイルでフィールドを区別するために使用されます。 この変数のインスタンス ディメンションに沿って集約が厳密に実行されます。

  • インスタンス変数と観測変数の両方で、変数名ごとに照合が行われます。 つまり、異なる netCDF ファイルの 2 つの変数で名前が同じ場合は、同じものを表すものとして解釈されます。

  • 複数のインスタンス変数と観測変数 (クルーズ番号、温度、塩分濃度など) は [インスタンス変数] (Python では instance_variables) パラメーターと [観測変数] (Python では observation_variables) でそれぞれ選択できます。

  • [分析範囲] (Python では analysis_extent) パラメーターを使用して、スタンドアロン ツール操作の出力分析エリアを明示的に指定したり、ワークフローの一環として環境設定をオーバーライドしたりできます。 値の入力、表示範囲の選択、レイヤーの選択、または入力データセットの参照によって範囲を指定できます。

  • [分析範囲] のデフォルト値は入力 netCDF ファイルのすべての範囲から計算されます。

  • 範囲をパラメーター値として明示的に指定しない場合、分析環境設定から取得されます。

  • [出力スキーマ] パラメーター (Python では out_schema = "INSTANCE_AND_OBSERVATION") で [インスタンスと観測] オプションが指定されている場合、選択されたインスタンス フィールドに沿ったすべての位置情報を含む 2D ポイント フィーチャクラス、および選択された観測変数を含む関連テーブルが作成されます。 InstanceID フィールドに基づいてテーブルをフィーチャクラスに結合するオプションのレイヤーも作成できます。 [ルートとイベント] オプション (Python では (out_schema = "ROUTE_AND_EVENT") を指定すると、2 つの出力が作成されます。 1 つは各垂直レベルの 3D 頂点と計測値がある垂直ポリライン フィーチャクラスです。 もう 1 つの出力は、観測値、from_z フィールド、to_z フィールドがあるテーブルです。 このテーブルを使用して、プロファイルに沿ってリニア ダイナミック セグメンテーション イベント クラスを作成できます。 このスキーマでは結合レイヤーが作成されません。 [ポイント 3D] オプション (Python では out_schema = "POINT_3D") を指定した場合、すべてのレコード (すべての垂直レベルがあるすべてのロケーション) が含まれる 3D ポイント フィーチャのみが作成されます。

  • netCDF ファイルのデータ変数では、grid_mapping 変数を使用して、空間座標値で使用する座標参照系 (CRS) を明示的に定義できます。 グリッド マッピング epsg_code 属性を使用して GCS か PCS を選択できます。 また、グリッド マッピング esri_pe_stringcrs_wktspatial_ref の各属性のいずれかを使用して、WKT 1 か WKT 2 のどちらの文字列かを定義できます。 これらの属性のいずれかがある場合、水平座標系の他のどの属性も使用されません。 サポートされている WKT 1 と WKT 2 の文字列、およびこれらの WKID については、「鉛直座標系」、「投影座標系」、「地理座標系」をご参照ください。

  • 空間座標値が 3D の場合は、grid_mapping 変数でも鉛直座標系 (VCS) を指定する必要があります。 VCS は、鉛直測地基準系、メジャーの距離単位、鉛直座標が増加する方向 (上または下) を組み合わせたものです。 測地基準系は通常、グリッド マッピング変数の属性から取得され、他のプロパティは鉛直座標変数から取得されます。 任意の鉛直測地基準系は、複合 WKT 文字列を上記に記載されているいずれかの WKT 属性の値として使用することで指定できます。 重力ベースの測地基準系は geoid_name 属性か geopotential_datum_name 属性を使用して指定できます。 さらに、潮位基準面は、鉛直座標変数のいずれかの潮位標準名を使用して暗黙的に指定できます。 VCS が指定されておらず、鉛直座標変数がある場合は、Instantaneous Water Level Depth or Height (epsg:5831, epsg:5829) がデフォルトとして選択されます。

パラメーター

ラベル説明データ タイプ
入力 NetCDF ファイルまたはフォルダー

フィーチャクラスを作成するために使用する入力 netCDF ファイル。 netCDF ファイル単体、および複数の netCDF ファイルを含むフォルダーを使用できます。

入力 netCDF ファイル間で DSG フィーチャ タイプとスキーマを揃える必要があります。

Folder; File
ターゲット ワークスペース

出力フィーチャクラスとテーブルが作成されるエンタープライズ ジオデータベースまたはファイル ジオデータベース。 これは既存のワークスペースである必要があります。

Workspace
出力ポイントまたはポリライン名

netCDF 変数のロケーションを含むフィーチャクラスの名前。 これらの変数は [インスタンス変数] パラメーターのフィールドとして追加されます。

String
観測変数
(オプション)

各ロケーションと各垂直レベルにおけるすべての観測値を含む netCDF 変数。 これらはフィールドとして出力テーブルに追加されます。

String
出力結合またはイベント テーブル名
(オプション)

観測変数のすべてのレコードを格納する出力テーブルの名前。

String
インスタンス変数
(オプション)

各フィーチャを区別し、観測が行われるロケーションを表す netCDF 変数。 これらの変数はフィールドとして出力フィーチャクラスに追加されます。

String
出力スキーマ
(オプション)

作成される出力フィーチャクラス タイプを指定します。

  • インスタンスと観測各インスタンスの位置を含む 2D ポイントがあるフィーチャクラス、およびすべての観測変数を含む関連テーブルが作成されます。 これがデフォルトです。
  • ルートとイベント3D 頂点がある垂直ポリライン フィーチャクラス、および観測変数のリニア イベント テーブルが作成されます。
  • ポイント 3Dすべての垂直レベルですべてのインスタンスを含む 3D フィーチャクラスが作成されます。
String
サブディレクトリを含める
(オプション)

入力フォルダーのサブディレクトリに存在しているファイルを使用するかどうかを指定します。

  • オン - すべてのサブディレクトリのすべての netCDF ファイルが使用されます。
  • オフ - 入力フォルダーのファイルのみが使用されます。 これがデフォルトです。
Boolean
入力 Climate and Forecast メタデータ
(オプション)

入力 netCDF ファイルに不足または変更された CF 情報を提供する、拡張子が .ncml の XML ファイル。

File
分析範囲
(オプション)

出力フィーチャクラスのエリアを定義する範囲。

Extent
出力結合レイヤー
(オプション)

出力テーブルを出力フィーチャクラスに結合することで作成される出力レイヤー。 これはオプションの出力で、[出力スキーマ] パラメーターで [インスタンスと観測] オプションが指定されている場合のみ利用できます。

Feature Layer

派生した出力

ラベル説明データ タイプ
出力ポイントまたはポリライン

出力ポイントまたはポリライン フィーチャクラス。

Feature Class
出力結合またはイベント テーブル

出力テーブル。

Table

arcpy.md.NetCDFProfilesToFeatureClass(in_files_or_folders, target_workspace, out_point_or_polyline_name, {observation_variables}, {out_table_name}, {instance_variables}, {out_schema}, {include_subdirectories}, {in_cf_metadata}, {analysis_extent}, {out_join_layer})
名前説明データ タイプ
in_files_or_folders
[in_files_or_folders,...]

フィーチャクラスを作成するために使用する入力 netCDF ファイル。 netCDF ファイル単体、および複数の netCDF ファイルを含むフォルダーを使用できます。

入力 netCDF ファイル間で DSG フィーチャ タイプとスキーマを揃える必要があります。

Folder; File
target_workspace

出力フィーチャクラスとテーブルが作成されるエンタープライズ ジオデータベースまたはファイル ジオデータベース。 これは既存のワークスペースである必要があります。

Workspace
out_point_or_polyline_name

netCDF 変数のロケーションを含むフィーチャクラスの名前。 これらの変数は instance_variables パラメーターのフィールドとして追加されます。

String
observation_variables
[observation_variables,...]
(オプション)

各ロケーションと各垂直レベルにおけるすべての観測値を含む netCDF 変数。 これらはフィールドとして出力テーブルに追加されます。

String
out_table_name
(オプション)

観測変数のすべてのレコードを格納する出力テーブルの名前。

String
instance_variables
[instance_variables,...]
(オプション)

各フィーチャを区別し、観測が行われるロケーションを表す netCDF 変数。 これらの変数はフィールドとして出力フィーチャクラスに追加されます。

String
out_schema
(オプション)

作成される出力フィーチャクラス タイプを指定します。

  • INSTANCE_AND_OBSERVATION各インスタンスの位置を含む 2D ポイントがあるフィーチャクラス、およびすべての観測変数を含む関連テーブルが作成されます。 これがデフォルトです。
  • ROUTE_AND_EVENT3D 頂点がある垂直ポリライン フィーチャクラス、および観測変数のリニア イベント テーブルが作成されます。
  • POINT_3Dすべての垂直レベルですべてのインスタンスを含む 3D フィーチャクラスが作成されます。
String
include_subdirectories
(オプション)

入力フォルダーのサブディレクトリに存在しているファイルを使用するかどうかを指定します。

  • INCLUDE_SUBDIRECTORIESすべてのサブディレクトリのすべての netCDF ファイルが使用されます。
  • DO_NOT_INCLUDE_SUBDIRECTORIES入力フォルダーのファイルのみが使用されます。 これがデフォルトです。
Boolean
in_cf_metadata
(オプション)

入力 netCDF ファイルに不足または変更された CF 情報を提供する、拡張子が .ncml の XML ファイル。

File
analysis_extent
(オプション)

Extent クラスは、出力ラスター データセットの範囲を決定します。

Extent クラスの形式は次のとおりです。

  • Extent (XMin, YMin, XMax, YMax)

    ここで、

    • XMin - 範囲最小 X 値
    • YMin - 範囲最小 Y 値
    • XMax - 範囲最大 X 値
    • YMax - 範囲最大 Y 値

Extent
out_join_layer
(オプション)

出力テーブルを出力フィーチャクラスに結合することで作成される出力レイヤー。 これはオプションの出力で、out_schema パラメーターで INSTANCE_AND_OBSERVATION オプションが指定されている場合のみ利用できます。

Feature Layer

派生した出力

名前説明データ タイプ
out_point_or_polyline

出力ポイントまたはポリライン フィーチャクラス。

Feature Class
out_table

出力テーブル。

Table

コードのサンプル

NetCDFProfilesToFeatureClass の例 1 (Python ウィンドウ)

この例では、海洋図データセットの netCDF DSG プロファイル ファイルからフィーチャクラスとテーブルを作成します。

import arcpy
arcpy.md.NetCDFProfilesToFeatureClass(r"C:\WOD\wod_ctd_2019.nc", r"C:\ArcGIS\Projects\output.gdb", 
									  "WOD_2019", "Salinity", None, "WOD_2019_table", 
									  "INSTANCE_AND_OBSERVATION", "INCLUDE_SUBDIRECTORIES",
									  None, "DEFAULT", "WOD_2019_layer")
NetCDFProfilesToFeatureClass の例 2 (スタンドアロン スクリプト)

この例では、Argo の netCDF DSG プロファイル ファイルから 3D フィーチャクラスを作成します。

# Name: NetCDFProfilesToFeatureClass_Ex_02.py
# Description: Creates a 3D point feature class from a set of float data.

# Import system modules
Import arcpy  

# Set the local variables 
in_files_or_folders = r"C:\Argo" 
target_workspace = r"C:\outputs\argo.gdb" 
out_point_or_polyline_name = “argo_3d” 
observation_variables = “temperature;pressure” 
out_table_name = “” 
instance_variables = “” 
out_schema = “POINT_3D” 
include_subdirectories = “DO_NOT_INCLUDE_SUBDIRECTORIES” 
in_cf_metadata = “” 
analysis_extent = “” 
out_join_layer = “” 

# Execute NetCDFProfilesToFeatureClass
arcpy.md.NetCDFProfilesToFeatureClass(in_files_or_folders, target_workspace,
                                      out_point_or_polyline_name, observation_variables,
                                      out_table_name, instance_variables, out_schema,
                                      include_subdirectories, in_cf_metadata,
                                      analysis_extent, out_join_layer)

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック