- 功能介绍
- 参数说明
- 脚本示例
- 脚本代码
- 脚本运行结果
功能介绍
该组件提供批式 UDF 功能。
在Python环境中,可以提供含eval函数的对象或者lambda函数作为UDF。
参数说明
以下为Python脚本中的参数:
| 名称 | 中文名称 | 描述 | 类型 | 是否必须? | 默认值 |
|---|---|---|---|---|---|
| func | UDF 函数 | UDF 函数 | 含eval函数的对象或者lambda函数 | ✓ | |
| outputCol | 输出结果列列名 | 输出结果列列名 | String | ✓ | |
| resultType | 输出结果列类型 | 输出结果列类型 | String | ✓ | |
| selectedCols | 选择的列名 | 计算列对应的列名列表 | String[] | ✓ | |
| reservedCols | 算法保留列名 | 算法保留列 | String[] | null |
脚本示例
脚本代码
class PlusOne(object):def eval(self, x):return x + 1passsource = CsvSourceBatchOp()\.setSchemaStr("sepal_length double, sepal_width double, petal_length double, petal_width double, category string")\.setFilePath("http://alink-dataset.cn-hangzhou.oss.aliyun-inc.com/csv/iris.csv")udfOp = UDFBatchOp() \.setFunc(PlusOne()) \.setResultType("DOUBLE") \.setSelectedCols(['sepal_length']) \.setOutputCol('sepal_length_t') \.setReservedCols(['sepal_width'])res = udfOp.linkFrom(source)res.firstN(10).print()
脚本运行结果
sepal_length_t sepal_width0 6.0 3.21 7.6 3.02 6.4 3.93 6.0 2.34 6.1 3.55 6.0 2.06 6.5 3.57 7.2 3.48 6.6 2.79 7.8 2.8
