機械翻訳について

データベース表またはファイルへのデータの格納

機械学習タスクでの作業には、データ変換アクティビティ(意味のある機能の作成、データ・クリーニング、カテゴリ変数のエンコーディングなど)が含まれ、データをより便利にできます。 その後、SpatialDataFrameクラスのwriteメソッドを使用して、これらのデータ変更をデータベースまたはファイルに格納できます。

writeメソッドをコールする前に、SpatialDataFrameのすべての変換がデータベース表に直接影響を与えることはありません。

次の表に、write関数の主なパラメータを示します。

パラメータ 説明
dataset このパラメータはSpatialDatasetのインスタンスで、結果のデータセットを表します。
if_exists オプションは、failおよびreplaceです。 結果のデータセットがすでに存在する場合に実行するアクションを決定します。
include_index Trueの場合、インスタンスの索引列が結果に書き込まれます。
create_spatial_metadata 空間メタデータを作成する必要がある場合、この値はTrueに設定されます。 Oracle Spatialデータベース・データセットにのみ使用されます。
create_spatial_index このパラメータは、Oracle Spatialデータベース・データセットにのみ使用され、空間索引を作成する必要がある場合はTrueです。

詳細は、「Oracle Spatial AI Python APIリファレンス」SpatialDataFrame.write関数を参照してください。

次の例では、block_groups SpatialDataFrameを使用して次のステップを実行します:

  1. INCOME_LABELというカテゴリ変数を持つ新しい列を追加します。
  2. 拡張データセットを持つSpatialDataFrameの新しいインスタンスを戻すadd_columnメソッドをコールします。
  3. writeメソッドをコールして、データベースにデータを格納します。
  4. SpatialDataFrameで最近作成された表からデータをロードし、新しく追加された列を確認します。
# The column INCOME_LABEL is not in the dataset
if "INCOME_LABEL" not in block_groups.columns:
    print("The column INCOME_LABEL is not part of the columns of block_groups")
 
# Create the variable "INCOME_LABEL" based on the median income
block_groups_extended = block_groups.add_column("INCOME_LABEL", pd.qcut(block_groups['MEDIAN_INCOME'].values, [0, 0.5, 1], labels=[0, 1]).to_list())
 
 
# Store the extended data in the database
block_groups_extended.write(DBSpatialDataset(table='write_test'), 
                            if_exists='replace', 
                            create_spatial_index=True)
 
# Load the stored dataset in a new SpatialDataFrame
block_groups_new = SpatialDataFrame.create(DBSpatialDataset(table='write_test'))
 
# The column INCOME_LABEL is contained in the dataset's columns
if "INCOME_LABEL" in block_groups_new.columns:
    print("The column INCOME_LABEL is contained in the columns of block_groups_new")

出力では、新しい列INCOME_LABELがデータベースに格納されているデータセットの一部であることが確認されます。

The column INCOME_LABEL is not part of the columns of block_groups
The column INCOME_LABEL is contained in the columns of block_groups_new