すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:MTableアセンブラ

最終更新日:Jul 22, 2024

MTableアセンブラーを使用して、テーブル内の列をグループ化し、データをMTableに集約できます。

制限事項

サポートされている計算エンジンは、MaxCompute、Flink、およびDeep Learning Containers (DLC) です。

Platform for AI (PAI) コンソールでのコンポーネントの設定

  • 入力ポート

    入力ポート (左から右へ)

    データ型

    推奨上流コンポーネント

    必須/任意

    data

    なし

  • コンポーネントパラメータ

    タブ

    項目

    説明

    フィールド設定

    selectedCols

    計算された列の名前のリスト。

    groupCols

    グループ化する列の名前。 このパラメーターはオプションです。 1つ以上の列を選択できます。 このパラメーターはデフォルトでは空のままで、完全なデータ集約を示します。

    パラメーター設定

    outputCol

    出力結果列の名前。

    実行チューニング

    数の労働者

    労働者の数。 このパラメーターは、Memory per worker, unit MBパラメーターと一緒に使用する必要があります。 このパラメーターの値は正の整数でなければなりません。 有効な値: [1,9999] 。

    ワーカあたりのメモリ、単位MB

    各ワーカーのメモリサイズ。 有効値: 1024〜64 × 1024。 単位:MB。

コードを使用したコンポーネントの設定

次のコードをPyAlink Scriptコンポーネントのコードエディターにコピーできます。 これにより、PyAlinkスクリプトコンポーネントはMTableアセンブラコンポーネントのように機能します。

import numpy as np
import pandas as pd
from pyalink.alink import *

df_data = pd.DataFrame([
      ["a1", "11L", 2.2],
      ["a1", "12L", 2.0],
      ["a2", "11L", 2.0],
      ["a2", "12L", 2.0],
      ["a3", "12L", 2.0],
      ["a3", "13L", 2.0],
      ["a4", "13L", 2.0],
      ["a4", "14L", 2.0],
      ["a5", "14L", 2.0],
      ["a5", "15L", 2.0],
      ["a6", "15L", 2.0],
      ["a6", "16L", 2.0]
])

input = BatchOperator.fromDataframe(df_data, schemaStr='id string, f0 string, f1 double')

zip = GroupByBatchOp()\
	.setGroupByPredicate("id")\
	.setSelectClause("id, mtable_agg(f0, f1) as m_table_col")

flatten = FlattenMTableBatchOp()\
	.setReservedCols(["id"])\
	.setSelectedCol("m_table_col")\
	.setSchemaStr('f0 string, f1 int')

zip.linkFrom(input).link(flatten).print()