MTable展开
该组件将MTable展开成Table。
使用限制
支持的计算引擎为MaxCompute和Flink。
可视化配置组件参数
页签 | 参数 | 描述 |
字段设置 | 选中的列名 | 计算列对应的列名,类型是STRING, 格式是MTABLE。 |
参数设置 | Schema | 展开的列名和类型。格式为colname coltype[, colname2, coltype2[, ...]],例如f0 string, f1 bigint, f2 double。 |
处理无效值的方法 | 处理无效值的方法,取值如下:
| |
执行调优 | 节点个数 | 与单个节点内存大小参数配对使用。取值为[1, 9999]的正整数。 |
单个节点内存大小,单位M | 取值范围为1024 MB~64*1024 MB。 |
通过代码方式配置组件
您可以将以下代码复制到PyAlink脚本组件中,使PyAlink脚本组件实现与该组件相同的功能。
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()