繁体   English   中英

如何在 AWS-Glue 脚本中编写用户定义的函数?

[英]How to write user-defined function in AWS-Glue Script?

我们如何在动态框架或数据框架上使用 PySpark (Python) 在 AWS-Glue 脚本中编写用户定义的函数?

“ AWS Glue尚不直接支持Lambda函数(也称为用户定义函数)。但是,除了DynamicFrames的特殊功能之外,您始终可以将DynamicFrame与Apache Spark DataFrame相互转换,以利用Spark功能。” -AWS Glue Medicaid Python示例

AWS Glue Medicaid Python示例(在上面引用/链接)包括一个Spark UDF示例:

from pyspark.sql.functions import udf
from pyspark.sql.types import StringType

chop_f = udf(lambda x: x[1:], StringType())
medicare_dataframe = medicare_dataframe.withColumn(
        "ACC", chop_f(
            medicare_dataframe["average covered charges"])).withColumn(
                "ATP", chop_f(
                    medicare_dataframe["average total payments"])).withColumn(
                        "AMP", chop_f(
                            medicare_dataframe["average medicare payments"]))
medicare_dataframe.select(['ACC', 'ATP', 'AMP']).show()

这只是标准的Spark代码。 如果您想使用Spark SQL,请参见此databricks示例

dynamicframe 并不像 Dataframe API 支持的那样完全支持 UDF。 您将获得的最好的是 MAP.apply。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM