oraclesai.SpatialDataFrame
- 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()
を使用してファイル・システムにデータが書き込まれるときなど)、データがダウンロード(マテリアライズド)されます。メソッド
__init__
(dataset)add_column
(column_name, series)シリーズを新しい列として現在のプロキシに追加します。
area
([tolerance, area_col])現在のSpatialDataFrameから各ジオメトリの領域を取得します。
現在のSpatialDataFrameを
geopandas.GeoDataFrame
に変換します。現在のSpatialDataFrameを
oml.DataFrame
のインスタンスに変換buffer
(distance)各ジオメトリの周囲にバッファを作成します。
combine
(tgt[, combine_op, tolerance, how, ...])現在のSpatialDataFrameのジオメトリをtgtのジオメトリと組み合せます。
create
(dataset)データセット・タイプに基づいてSpatialDataFrameインスタンスを作成します。
distance
(qry_win[, distance_col, tolerance, ...])現在のSpatialDataFrameからqry_winまでのジオメトリ間の距離を取得します。
drop
(columns)columnsパラメータで列を指定せずに、新しいSpatialDataFrameを返します。
dropna
()欠落値を含む行を削除します。
filter
(qry_win[, tolerance])SpatialDataFrameでプライマリ空間フィルタを実行します。
get_max_scored_class
(*args)get_values
([include_geometry])SpatialDataFrameの内容をnumpy配列として返します。
groupby
(by)データを1つ以上の列でグループ化します。
head
([n])参照データから最初のn行を返します。
iterrows
([chunk_size])現在のインスタンスのすべての行を反復します。
length
([tolerance, length_col])現在のSpatialDataFrameから各ジオメトリの長さを計算します。
merge
(right[, how, on, left_on, right_on, ...])指定された結合キーを比較して、2つのSpatialDataFrameオブジェクトを結合します。
merge_oml_dataframe
(oml_df[, on, left_on, ...])現在のSpatialDataFrameを、キーに基づいて既存の
oml.DataFrame
とマージします。nearest_neighbors
(qry_win[, num_neighbors, ...])shapelyジオメトリまたは別のSpatialDataFrameとして指定された特定のロケーションに近いレコードを含むSpatialDataFrameを返します。
plot
(**plot_geometries_extra_kwargs)matplolibを使用してSpatialDataFrameをプロットします。
relate
(qry_win[, mask, tolerance, ...])指定された空間演算子を使用して空間フィルタリングを実行します。
replace
(to_replace、値)sort_values
(by[, ascending])指定した列の値でソートされたSpatialDataFrameを返します。
tail
([n])参照データから最後のn行を返します。
to_crs
(crs)指定されたCRSのジオメトリを含む新しいSpatialDataFrameを返します。
within_distance
(qry_win, distance[, ...])shapely問合せウィンドウまたは別のSpatialDataFrameとして指定された問合せウィンドウから特定の距離内にあるレコードのみを含むSpatialDataFrameを返します。
write
(dataset[, if_exists, ...])現在のSpatialDataFrameデータを、データセット引数で指定された宛先に書き込みます。
属性
列名のリストを返します。
ジオメトリ・レイヤーに関連付けられた座標参照系を返します。
SpatialDataFrameのディメンション性。
すべてのデータを囲む最小境界矩形を計算します。