oraclesai

class CombineOpType

2つのジオメトリ間の結合操作の定義

DIFFERENCE = 'DIFFERENCE'

他のジオメトリでカバーされていないジオメトリでカバーされているリージョンを返します。

INTERSECTION = 'INTERSECTION'

他のジオメトリでも共有されているジオメトリのリージョンを返します。

UNION = 'UNION'

2つのジオメトリでカバーされるリージョンを返します。

XOR = 'XOR'

両方で共有されていない2つのジオメトリのリージョンを返します。

class DBSpatialDataset(table: str, schema: str = None, cursor: Cursor = None, spatial_column: str = None, **kwargs)

ジオメトリ・レイヤーを持つデータベース表への参照。

パラメータ:
  • table - データベースに空間レイヤーがある表の名前。

  • schema - 表が定義されているスキーマの名前。

  • cursor - データベースに接続するためのoracledb.Cursor。 OMLノートブックで実行されていて、それが渡されない場合、カーソルはoml.cursor()から取得されます

  • spatial_column - SDO_GEOMETRY型の列の名前。

class FileSpatialDataset(path: str, driver: str = None)

ローカル・ファイル・システム内のファイルまたはディレクトリへの参照。

パラメータ:
  • path (str) - 参照されるリソースのパス。

  • driver - ファイルの読取りまたは書込みに使用される「The OGR」フォーマット・ドライバ。 指定できる値は、fiona.supported_driversによって決定されます。 指定しない場合、ファイル拡張子から推測しようとします。 書き込み時に拡張子が指定されていない場合は、ドライバESRI Shapefileを使用します。

class GeoDataFrameDataset(gdf: GeoDataFrame)

既存のGeoDataFrameへの参照。 GeoDataFrameからSpatialDataFrameを作成するために使用します。

パラメータ:

gdf - geopandas.GeoDataFrameのインスタンス。

class PARObjStoreSpatialDataset(par_url: str, namespace: str = None, bucket: str = None, prefix: str = None, object_name: str = None, driver: str = None)

Oracle Object Storeにある空間形式のフォルダまたはオブジェクトへの事前認証済リクエストURLが含まれます。

パラメータ:
  • par_url - リソースへの完全なPAR URL、またはPARの一意のコードを含む少なくともホストURL。

  • namespace - PARのネームスペース名。 par_urlで指定されたネームスペース(ある場合)をオーバーライドします。

  • bucket - PARのバケット名。 par_urlで指定されたバケット(ある場合)をオーバーライドします。

  • prefix - オブジェクトのプレフィクス。 par_urlで指定されたプレフィクス(ある場合)をオーバーライドします。

  • object_name - オブジェクトまたはフォルダの名前。 par_urlで指定されたオブジェクト名(ある場合)をオーバーライドします。

  • driver - オブジェクトの読取りまたは書込みに使用される「The OGR」フォーマット・ドライバ。 指定できる値は、fiona.supported_driversによって決定されます。 指定しない場合、オブジェクト拡張から推測しようとします。 書き込み時に拡張子が指定されていない場合は、ドライバESRI Shapefileを使用します。

class SpatialDataFrame

データのロケーションに関係なく、データがメモリー内にあるかのように空間ベクトル・データを処理するためのパンダのようなインタフェース。

SpatialDataFrameのインスタンスは、createメソッドを使用して作成されます。

createメソッドは、プロキシに関連付けるデータセットを記述するために使用されるoraclesai.SpatialDatasetのインスタンスを取り込みます。

次の例は、Oracleデータベースの空間表に対してSpatialDataFrameを作成する方法を示しています。

>>> from oraclesai import SpatialDataFrame, DBSpatialDataset
>>> dataset = DBSpatialDataset(cursor=oracledb_cursor, table='chicago_accidents')
>>> sdf = SpatialDataFrame.create(dataset)
>>> sdf.head()
            OGR_FID   REPORT_TYP                    geometry
0           657       ON SCENE                      POINT (-9755760.901 5133215.436)
1           659       ON SCENE                      POINT (-9758088.412 5156991.966)
            661       NOT ON SCENE (DESK REPORT)    POINT (-9758162.478 5125561.017)

より多くのSpatialDataset実装を使用して、Oracle Object Storage、ローカル・ファイル、および既存のgeopandas.GeoDataFrameからデータをロードできます。

SpatialDataFrameのインスタンスが作成されると、空間変換を適用するために使用できます。 データがOracleデータベースにある場合は、空間操作の実行にデータベース内のOracle Spatialエンジンが使用されます。

SpatialDataFrameは不変であるため、各変換はSpatialDataFrameの新しいインスタンスになります。

Oracleデータベースに存在するデータに対してSpatialDataFrameが作成されると、データがメモリーで必要になるまで(たとえば、oraclesai.SpatialDataFrame.as_geodataframe()またはoraclesai.SpatialDataFrame.head()をコールしてgeopandas.GeoDataFrameに変換される場合や、Oracle Object Storageなどの別のソースにデータが書き込まれるとき、またはメソッドoraclesai.SpatialDataFrame.write()を使用してファイル・システムにデータが書き込まれるときなど)、データがダウンロード(マテリアライズド)されます。

add_column ( column_name, series )

シリーズを新しい列として現在のプロキシに追加します。 追加する列には、現在のSpatialDataFrameと同じ行数が必要です。

パラメータ:
  • column_name - 追加する列の名前

  • series - パンダのシリーズ、numpy配列または単一列のSpatialDataFrame。 SpatialDataFrameがデータベースからデータを参照し、系列がパンダまたはnumpy配列である場合、結果のSpatialDataFrameはすべてのデータをクライアントにフェッチします。

返り値:

新しい列を含むSpatialDataFrame

abstract area(tolerance=None, area_col='AREA')

現在のSpatialDataFrameから各ジオメトリの領域を取得します。

パラメータ:
  • tolerance - 空間許容度。

  • area_col - 領域値を含む新しい列の名前。

返り値:

領域を新しい列として含む新しいSpatialDataFrame。

abstract as_geodataframe() GeoDataFrame

現在のSpatialDataFrameをgeopandas.GeoDataFrameに変換します。

返り値:

geopandas.GeoDataFrame

as_oml_dataframe()

現在のSpatialDataFrameをoml.DataFrameのインスタンスに変換

abstract buffer(distance: float)

各ジオメトリの周囲にバッファを作成します。 結果にはソースと同じ行と列が含まれますが、ジオメトリはバッファされます。

パラメータ:

distance - バッファの距離。

返り値:

新しいSpatialDataFrame。

abstract property columns

列名のリストを返します。

返り値:

文字列のリスト。

abstract combine(tgt, combine_op: CombineOpType = CombineOpType.UNION, tolerance: float = None, how='inner', on=None, left_on=None, right_on=None, qry_win_out_cols=None)

現在のSpatialDataFrameのジオメトリをtgtのジオメトリと組み合せます。

パラメータ:
  • tgt - SpatialDataFrame、GeoDataFrame、GeoSeriesまたは単一のshapelyジオメトリ。

  • combine_op - (デフォルトはCombineOpType.UNION)実行する結合操作のタイプ。

  • tolerance - 空間的寛容さ。

  • how - 結合の実行方法を指定します。 可能な値は次のとおりです: 'inner' (デフォルト)、'full'、'left'または'right'。

  • on - 列名または列名のリスト。 結合キーとして使用される、両方のSpatialDataFramesに含まれる列。 このパラメータが設定されている場合、left_onおよびright_onは無視されます。

  • left_on - 列名または列名のリスト。 結合キーとして使用される現在のSpatialDataFrameからの列。

  • right_on - 列名または列名のリスト。 qry_win SpatialDataFrameパラメータからの列。結合キーとして使用されます。

  • qry_win_out_cols - 返されたSpatialDataFrameに含まれるqry_winの列の名前または名前のリストを指定します。 Noneの場合、戻されるSpatialDataFrameには、コール元のSpatialDataFrame.Ifからの列のみが含まれます。この値は'*'です。結果SpatialDataFrameには、コール元のSpatialDataFrameとqry_winの両方の列がすべて含まれます。

返り値:

結合されたジオメトリを含むSpatialDataFrame。

classmethod create(dataset: SpatialDataset)

データセット・タイプに基づいてSpatialDataFrameインスタンスを作成します。

パラメータ:

dataset - SpatialDataFrameは、データセット・タイプに基づいて作成されます。

abstract property crs

ジオメトリ・レイヤーに関連付けられた座標参照系を返します。

返り値:

pyproj.CRSインスタンスまたは文字列。

abstract distance(qry_win, distance_col='DISTANCE', tolerance: float = None, how='inner', on=None, left_on=None, right_on=None, qry_win_out_cols=None)

現在のSpatialDataFrameからqry_winまでのジオメトリ間の距離を取得します。

ソースの同じ列と計算された距離を持つSpatialDataFrameが、qry_win_out_colsで指定されたqry_winの列とともに返されます。

パラメータ:
  • qry_win - SpatialDataFrame、GeoDataFrame、GeoSeriesまたは単一のshapelyジオメトリ。

  • distance - 追加された距離列の名前。

  • tolerance - 空間的寛容性。

  • how - 結合の実行方法を指定します。 可能な値は次のとおりです: 'inner' (デフォルト)、'full'、'left'または'right'。

  • on - 列名または列名のリスト。 結合キーとして使用される、両方のSpatialDataFramesに含まれる列。 このパラメータが設定されている場合、left_onおよびright_onは無視されます。

  • left_on - 列名または列名のリスト。 結合キーとして使用される現在のSpatialDataFrameからの列。

  • right_on - 列名または列名のリスト。 qry_win SpatialDataFrameパラメータからの列。結合キーとして使用されます。

  • qry_win_out_cols - 返されたSpatialDataFrameに含まれるqry_winの列の名前または名前のリストを指定します。 Noneの場合、戻されるSpatialDataFrameには、コール元のSpatialDataFrame.Ifからの列のみが含まれます。この値は'*'です。結果SpatialDataFrameには、コール元のSpatialDataFrameとqry_winの両方の列がすべて含まれます。

返り値:

新しい列として距離を含む新しいSpatialDataFrame。

drop(columns)

columnsパラメータで列を指定せずに、新しいSpatialDataFrameを返します。

パラメータ:

columns - 列名または列名のリスト。

返り値:

指定された列がないSpatialDataFrame。

abstract dropna()

欠落値を含む行を削除します。

返り値:

値が欠落していない行のみを含む新しいSpatialDataFrame。

property dtypes

SpatialDataFrameの列のPython型

abstract filter(qry_win: BaseGeometry, tolerance: float = None)

SpatialDataFrameでプライマリ空間フィルタを実行します。 非空間索引付きデータの場合、ジオメトリのMBRと問合せウィンドウの間のanyinteractテストが実行されます。

パラメータ:
  • qry_win - shapelyジオメトリ。

  • tolerance - 空間的寛容性。

返り値:

新しいSpatialDataFrame。

get_values(include_geometry=False)

SpatialDataFrameの内容をnumpy配列として返します。

パラメータ:

include_geometry - Trueの場合、ジオメトリ列の内容が配列の一部として返されます。

返り値:

numpyアレイ。

abstract groupby(by)

データを1つ以上の列でグループ化します。 結果は、グループ化されたデータに対して集計を実行するために使用できます。

次の例では、SpatialDataFrameデータをゾーン列別にグループ化し、geoemetry列に対して集計mbrを実行し、accidents列に対してavgを実行します。

>>> grouped_proxy = proxy.groupby('zone').aggregate(mbr='geoemetry', avg='accidents')
>>> grouped_proxy.head()
zone   accidents       geometry
200     7.8             POLYGON ((85.87653 27.61234, 85.87355 27.60861...             
301     12.3            POLYGON ((81.75089 28.31038, 81.75562 28.30740...
35      10.5            POLYGON ((83.70647 28.39278, 83.70721 28.38781...

集計関数は、様々な列に対して複数の集計を実行するために使用することも、集計関数ではなく特定の集計関数を直接コールすることもできます。 集計を使用すると、集計操作および集計列を次のように指定できます: aggregate(<aggregation>=’single_column’ | list_of_columns)

使用可能な集計:

空間集計

集計

説明

mbr

グループ化されたジオメトリの最小境界矩形をポリゴンとして返します

convexhull

グループ内のすべてのジオメトリから凸のハル・ポリゴンを作成

union

グループ内のすべてのジオメトリから単一のジオメトリを作成

重心

グループ内のすべてのジオメトリから重心を計算

非空間集計

集計

説明

count

グループ内のすべての空でないサンプルをカウント

sum

グループ内のすべてのサンプルの数値合計

avg

グループ内のすべてのサンプルの値の平均を計算

min

グループの最小値を取得

max

グループ内の最大値を取得

次の例では、カウント集計をコールし、列を指定しません。 列が指定されていない場合、集計はグループ化されていないすべての列に対して実行されます。

>>> count_all_proxy = proxy.groupby('zone').count()
>>> count_all_proxy.head()
zone    accidents   injured
200     3           1
301     5           2
35      7           3

NOTE: データベースにバックアップされたSpatialDataFrameの場合、空間集計が指定されていない場合、oml.DataFrameのインスタンスが返されます。 メモリーにバックアップされたSpatialDataFrameの場合、空間集計が指定されていないと、pandas.DataFrameのインスタンスが返されます。

空間集計が直接コールされる場合、次の例に示すように、集計されたジオメトリのみが返されます。

>>> only_geom_proxy = proxy.groupby('zone').union()
>>> only_geom_proxy.head()
zone    geometry
200     POLYGON ((85.87653 27.61234, 85.87355 27.60861...             
301     POLYGON ((81.75089 28.31038, 81.75562 28.30740...
35      POLYGON ((83.70647 28.39278, 83.70721 28.38781...
パラメータ:

by - SpatialDataFrameオブジェクトの列名または列名のリスト。

返り値:

集計の実行に使用される中間オブジェクト。

abstract head(n=5) GeoDataFrame

参照データから最初のn行を返します。

パラメータ:

n - 行数

返り値:

n行を含むgeopandas.GeoDataFrame

abstract iterrows(chunk_size: int = None)

現在のインスタンスのすべての行を反復します。

パラメータ:

chunk_size - int, default=None

abstract length(tolerance=None, length_col='LENGTH')

現在のSpatialDataFrameから各ジオメトリの長さを計算します。

パラメータ:
  • tolerance - 空間許容度。

  • length_col - 長さの値を含む新しい列の名前。

返り値:

新しい列としてジオメトリの長さを含む新しいSpatialDataFrame。

「唯物論」 ( table = なし, schema = なし, create_spatial_metadata = True, create_spatial_index = True, if_exists = 'fail' )

現在のSpatialDataFrameの情報を含むデータベース表を作成します。 SpatialDataFrameのデータがメモリーからのものである場合、データはデータベースにプッシュされます。 SpatialDataFrameのデータがデータベース内にあり、それが複数の変換の積である場合、すべての変換に基づいて表が作成されます。 これにより、さらなる変換の実行時間を改善できます。 表を指定しないと、一時表が作成され、現在のセッション中のみ使用可能になります。

パラメータ:
  • table - 作成するデータベース表の名前。

  • schema - 表が作成されるスキーマの名前。 表が指定されている場合にのみ使用されます。

  • create_spatial_metadata - Trueの場合、メタデータはSDO_GEOM_METADATAに追加されます。

  • create_spatial_index - Trueの場合、データに対して空間索引が作成されます。

  • if_exists - 値が'fail'の場合、パラメータ表が指定され、すでに存在すると、失敗します。 値が'replace'で、表が存在する場合、上書きされます。

返り値:

新しく作成された一時表を指す新しいSpatialDataFrame。

abstract merge(right, how: str = 'inner', on=None, left_on=None, right_on=None, main_geometry_side='left', keep_secondary_geometry=True)

指定された結合キーを比較して、2つのSpatialDataFrameオブジェクトを結合します。 結果のSpatialDataFrameオブジェクトには、両側の列が含まれます。

パラメータ:
  • right - 結合の右側として使用されるSpatialDataFrame、pandas.DataFrameまたはoml.DataFrame

  • how - 結合の実行方法を指定します。 可能な値は次のとおりです: 'inner' (デフォルト)、'full'、'left'または'right'。

  • on - 列名または列名のリスト。 結合キーとして使用される、両方のSpatialDataFramesに含まれる列。 このパラメータが設定されている場合、left_onおよびright_onは無視されます。

  • left_on - 列名または列名のリスト。 結合キーとして使用される現在のSpatialDataFrameからの列。

  • right_on - 列名または列名のリスト。 右側のSpatialDataFrameパラメータからの列。結合キーとして使用されます。

  • main_geometry_side - 指定可能な値は、'left' (デフォルト)または'right'です。 結果のSpatialDataFrameメイン・ジオメトリ列として使用するジオメトリを指定します。

  • keep_secondary_geometry - True (デフォルト)の場合、メイン・ジオメトリとして設定されていない側のジオメトリ列は、結果のSpatialDataFrameオブジェクトに表示されますが、空間操作の実行には使用されません。

abstract merge_oml_dataframe ( oml_df, on = なし, left_on = なし, right_on = なし, keep_on_side = 'left', 方法 = 'inner' )

現在のSpatialDataFrameを、キーに基づいて既存のoml.DataFrameとマージします。 結果は、条件に一致したレコードを含むSpatialDataFrameになります。

パラメータ:
  • oml_df - oml.DataFrameのインスタンス

  • on - 両方に存在する列(SpatialDataFrameとoml.DataFrame)で、両方のデータセットを結合するために使用されます。

  • left_on - 結合キーとして使用されるSpatialDataFrame内の列。

  • left_on - 結合キーとして使用されるoml.DataFrame内の列。

  • keep_on_side - left_onとright_onの名前が異なる場合、結果に保持される結合キーを指定します。

  • 「方法」 - 結合のタイプ。 可能な価値: inner, left, right.

返り値:

A SpatialDataFrame

abstract nearest_neighbors(qry_win, num_neighbors=None, distance_col=None, qry_win_out_cols=None)

shapelyジオメトリまたは別のSpatialDataFrameとして指定された特定のロケーションに近いレコードを含むSpatialDataFrameを返します。

num_neighborsパラメータを指定すると、問合せウィンドウに対してnum_neighborsのみが返されます。

オプションで、distance_colパラメータで列の名前を指定することで、最も近い各近隣までの距離を含めることができます。

shapelyジオメトリのかわりにSpatialDataFrameを指定すると、結果のSpatialDataFrameには、各レコードが両方の入力SpatialDataFramesからの情報(最も近い近傍と最も近い近傍が検索されるベース・ジオメトリ)で構成されるレコードが含まれます。

パラメータ:
  • qry_win - shapelyジオメトリまたは別のSpatialDataFrame。

  • num_neighbors - 最も近い隣人数。

  • distance_col - 生成される距離列の名前。

  • qry_win_out_cols - 返されたSpatialDataFrameに含まれるqry_winの列の名前または名前のリストを指定します。 Noneの場合、戻されるSpatialDataFrameには、コール元のSpatialDataFrameからの列のみが含まれます。 値が'*'の場合、結果SpatialDataFrameには、コール元のSpatialDataFrameとqry_winの両方からのすべての列が含まれます。

返り値:

新しいSpatialDataFrame。

plot(**plot_geometries_extra_kwargs)

matplolibを使用してSpatialDataFrameをプロットします。 このメソッドをコールすると、SpatialDataFrameのデータがクライアントにフェッチされます。

このメソッドは、oraclesai.vis.plot_geometries()の短縮形です。

パラメータ:

**plot_geometries_extra_kwargs -

データ・パラメータを除き、oraclesai.vis.plot_geometries()で受け入れられるパラメータ。

abstract relate(qry_win: BaseGeometry | SpatialDataFrame, mask: SpatialFilterMask = SpatialFilterMask.ANY_INTERACT, tolerance: float = None, qry_win_out_cols=None)

指定された空間演算子を使用して空間フィルタリングを実行します。

空間結合は、qry_winがSpatialDataFrameインスタンスである場合に実行できます。 qry_winの列は、パラメータqry_win_out_colsを使用して列の名前を渡すことで、結果のSpatialDataFrameに含めることができます。 次の例では、空間結合を実行し、コール元のSpatialDataFrameのすべての列とqry_winの1つの列を含むSpatialDataFrameを返します。

>>> sdf1.head(2)
      ID             geometry
0     23432          POLYGON ((85.87653 27.61234, 85.87355 27.60861...             
1     45465          POLYGON ((81.75089 28.31038, 81.75562 28.30740...
>>> sdf2.head(2)
      NAME           geometry
0     G0134          POLYGON ((84.56565 34.445454, 84.3434 27.88788...             
1     K0454          POLYGON ((83.70647 28.39278, 83.70721 28.38781...
>>> joined_sdf = sdf1.relate(qry_win=sdf2, mask=SpatialFilterMask.ANY_INTERACT, qry_win_out_cols=['NAME'])
>>> joined_sdf.head(2)
      ID      NAME       geometry
0     23432   J095       POLYGON ((85.87653 27.61234, 85.87355 27.60861...             
1     45465   G043       POLYGON ((81.75089 28.31038, 81.75562 28.30740...
パラメータ:
  • qry_win - shapelyジオメトリまたはSpatialDataFrame。

  • mask - 空間演算子、oraclesai.SpatialFilterMaskの値。

  • tolerance - 使用される許容範囲。

  • qry_win_out_cols - 返されたSpatialDataFrameに含まれるqry_winの列の名前または名前のリストを指定します。 Noneの場合、戻されるSpatialDataFrameには、コール元のSpatialDataFrameからの列のみが含まれます。 値が'*'の場合、結果SpatialDataFrameには、コール元のSpatialDataFrameとqry_winの両方からのすべての列が含まれます。

返り値:

新しいSpatialDataFrame。

rename_columns ( )

column_mapで指定された列名を変更します。 たとえば、列ZIPおよびADDRからZIPCODEおよびADDRESSを改名 : sdf = sdf.rename_columns({‘ZIP’: ‘zipcode’, ‘ADDR’: ‘ADDRESS’}) :returns : 名前が変更された列を含む新しいSpatialDataFrame。

abstract property shape: Tuple[int, int]

SpatialDataFrameのディメンション性。

返り値:

行と列の数。

abstract sort_values(by, ascending=True)

指定した列の値でソートされたSpatialDataFrameを返します。

パラメータ:
  • by - 1つの列名または列名のリスト

  • ascending - Trueの場合、値は昇順でソートされます

abstract split(ratio=(0.7, 0.3), seed=12345, use_hash=True)

SpatialDataFrameを複数のサブセットにランダムに分割

パラメータ:
  • ratio - 各サブセット・サイズを完全なデータ・セット・サイズのパーセンテージとして指定する値のリストまたはタプル。

  • seed - ランダム分割に使用されるシード。

  • use_hash - Trueの場合、ハッシュを使用してデータがランダムにプリットされます。それ以外の場合は、値の数値が使用されます。

返り値:

各インスタンスが比率リストの1つの値に対応するSpatialDataFrameインスタンスのリスト。

abstract tail(n=5) GeoDataFrame

参照データから最後のn行を返します。

パラメータ:

n - 行数

返り値:

n行を含むgeopandas.GeoDataFrame

abstract to_crs(crs) SpatialDataFrame

指定されたCRSのジオメトリを含む新しいSpatialDataFrameを返します。

パラメータ:

crs - pyproj.CRS.from_user_input関数で受け入れられる入力。

abstract property total_bounds

すべてのデータを囲む最小境界矩形を計算します。

返り値:

次の要素を持つフロートのタプル (min_x, min_y, max_x, max_y)

abstract within_distance(qry_win, distance: float, tolerance: float = None, qry_win_out_cols=None)

shapely問合せウィンドウまたは別のSpatialDataFrameとして指定された問合せウィンドウから特定の距離内にあるレコードのみを含むSpatialDataFrameを返します。

パラメータ:
  • qry_win - SpatialDataFrameまたはshapelyジオメトリ。

  • distance - qry_winまでの最大距離。

  • tolerance - 空間的寛容性。

  • qry_win_out_cols - 返されたSpatialDataFrameに含まれるqry_winの列の名前または名前のリストを指定します。 Noneの場合、戻されるSpatialDataFrameには、コール元のSpatialDataFrameからの列のみが含まれます。 値が'*'の場合、結果SpatialDataFrameには、コール元のSpatialDataFrameとqry_winの両方からのすべての列が含まれます。

返り値:

新しいSpatialDataFrame。

abstract write(dataset, if_exists='fail', create_spatial_metadata=False, create_spatial_index=False)

現在のSpatialDataFrameデータを、データセット引数で指定された宛先に書き込みます。

パラメータ:
  • dataset - oraclesai._data.SpatialDatasetのインスタンス。 データの格納方法について説明します。

  • if_exists - 結果のデータセットがすでに存在する場合の処理を定義します。 可能な値は次のとおりです: 'fail', 'replace'.

  • create_spatial_metadata - 空間メタデータを作成する必要がある場合はtrue。 Oracleデータベース・データセットにのみ使用されます。

  • create_spatial_index - 空間索引を作成する必要がある場合はtrue。 Oracleデータベース・データセットにのみ使用されます。

class SpatialDataset

ベクトル・データの汎用データセット。

exception SpatialError(code, message=None, cause=None, action=None)

Spatial AI API全体で使用される一般的なエラー・クラス。

パラメータ:

code - エラー・タイプを示す数値コード。

class SpatialFilterMask

異なる空間操作で使用される空間相互作用の定義。

ANY_INTERACT = 'anyinteract'

この相互作用は、データ・ジオメトリの境界または内部が問合せウィンドウの境界または内部と交差する場合に当てはまります。 つまり、2つのジオメトリ間に交差がある場合です。

CONTAINS = 'contains'

これは、問合せウィンドウの境界と内部がデータ・ジオメトリの内部内にあるかどうかを保持します。 この関係は内面の逆です。

COVERED_BY = 'coveredby'

データ・ジオメトリは、データ・ジオメトリの内部と境界が問合せウィンドウの内部にある場合に問合せウィンドウをCOVEREDBYします。ただし、境界が重なる点が異なります。

COVERS = 'covers'

この相互作用は、問合せウィンドウの内部と境界がデータ・ジオメトリの内部にあり、境界が重複する場合に当てはまります。 これがCOVEREDBYの逆です。

EQUAL = 'equal'

これは、データ・ジオメトリの内部と境界が問合せウィンドウと完全に一致するかどうかを保持します。

INSIDE = 'inside'

この相互作用は、データ・ジオメトリの境界と内部が問合せウィンドウの内部にあるかどうかを保持します。

ON = 'on'

データ・ジオメトリの内部および境界は、問合せウィンドウの境界と排他的に相互作用します。

OVERLAP_BDY_DISJOINT = 'overlapbdydisjoint'

これは、一方の内側が他方の内側と境界と交差するが、2つの境界が交差しない場合に保持されます。

OVERLAP_BDY_INTERSECT = 'overlapbdyintersect'

これは、データ・ジオメトリと問合せウィンドウの境界と内部が交差するかどうかを保持します。

TOUCH = 'touch'

これは、2つのジオメトリの境界が接触したが、内部が交差しない場合に保持されます。

「プッシュ」 ( gdf, create_spatial_index = True )

geopandas.GeodataFrameをOracle Databaseにプッシュします。 Oracle Databaseに内部表を作成し、そのデータを表に挿入します。 表は、PythonクライアントのSpatialDataFrameが表を参照しているかぎり存在します。

パラメータ:
  • gdf - クラス::geopandas.GeodataFrame.

  • create_spatial_index - Trueの場合、Oracle Databaseに空間インデックスを作成します。

返り値:

新しいoraclesai.SpatialDataFrame:

read(dataset: SpatialDataset) GeoDataFrame

指定されたデータセット参照をジオパンダのGeoDataFrameオブジェクトにロードします。

パラメータ:

dataset - SpatialDatasetのインスタンス。 ロードするデータセットの名前とソースを指定します。

返り値:

ジオパンダGeoDataFrame。

write(gdf: GeoDataFrame, dataset: SpatialDataset, include_index=False, if_exists='fail', create_spatial_metadata=True, create_spatial_index=False)

既存のGeoDataFrameからデータセット・パラメータで定義された宛先にコンテンツを書き込みます。

パラメータ:
  • gdf - ジオパンダGeoDataFrame

  • dataset - SpatialDatasetのインスタンス。 このパラメータの特定の実装に応じて、データ・フレームは、ローカル・ファイル・システム、オブジェクト・ストレージまたはOracleデータベースの表としてファイルとして格納されます。

  • include_index - Trueの場合、GeoDataFrame索引列が書き込まれます。

  • if_exists - データセットがすでに存在する場合のアクションを指定する文字列値。 可能な値は次のとおりです: 失敗、置換および追加。 デフォルト値はfailです。 値の追加は、データベース・データセットでのみ使用されます。

  • create_spatial_metadata - Trueで、データセットがデータベース表の場合、ジオメトリ・メタデータ情報が作成されます。

  • create_spatial_index - trueで、データセットがデータベース表の場合、GeoDataFrameジオメトリの空間索引が作成されます。