全部产品
Search
文档中心

Platform For AI:MTable Assembler

更新时间:Jul 02, 2025

Gunakan MTable Assembler untuk mengelompokkan kolom dalam tabel dan menggabungkan data ke dalam MTable.

Batasan

Compute engine yang didukung meliputi MaxCompute, Flink, dan Deep Learning Containers (DLC).

Konfigurasikan komponen di konsol Platform for AI (PAI)

  • Port Input

    Port input (kiri ke kanan)

    Tipe data

    Komponen hulu yang direkomendasikan

    Diperlukan

    data

    Tidak ada

    Ya

  • Parameter Komponen

    Tab

    Parameter

    Deskripsi

    Field Setting

    selectedCols

    Daftar nama kolom yang akan dihitung.

    groupCols

    Nama kolom yang ingin Anda kelompokkan. Parameter ini opsional. Anda dapat memilih satu atau lebih kolom. Secara default, parameter ini dibiarkan kosong, yang menunjukkan penggabungan data penuh.

    Parameter Setting

    outputCol

    Nama kolom hasil output.

    Execution Tuning

    Number of Workers

    Jumlah pekerja. Parameter ini harus digunakan bersama dengan parameter Memory per worker, unit MB. Nilai parameter ini harus berupa bilangan bulat positif. Nilai valid: [1,9999].

    Memory per worker, unit MB

    Ukuran memori setiap pekerja. Nilai valid: 1024 hingga 64 × 1024. Unit: MB.

Konfigurasikan komponen menggunakan kode

Salin kode berikut ke editor kode komponen PyAlink Script. Hal ini memungkinkan komponen PyAlink Script berfungsi seperti komponen MTable Assembler.

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()