如何将输入参数传递给 AWS Glue Map.apply 函数
Posted
技术标签:
【中文标题】如何将输入参数传递给 AWS Glue Map.apply 函数【英文标题】:How to pass input parameter to AWS Glue Map.apply function 【发布时间】:2020-12-11 16:30:45 【问题描述】:我正在从事一项 AWS Glue 工作,我有一个函数 "some_function"
,我想在 DynamicFrame dy_f
上应用该函数,但我还想将输入参数传递给 some_function。
Map.apply(frame=products_combination, f=search)
some_function 的定义是:
some_function(record, k)
到目前为止我已经尝试过: 作品:
Map.apply(frame=products_combination, f=search) ##provided i'm not taking k as input in some_function def as well
什么是错误:
Map.apply(frame=products_combination, f=search(k=10))
这会返回“TypeError: search() missing 1 required positional argument: 'record'”
如何将参数传递给 Map.apply 函数?我已经浏览了 [这里] 的文档,但在那里找不到我的解决方案。1
【问题讨论】:
【参考方案1】:我最终使用了 Spark udf 而不是 DynamicFrame.Map.apply。为我工作。
【讨论】:
这需要您离开动态框架护栏。任何不需要您使用数据框的分辨率?【参考方案2】:您始终可以使用 lambda 传递其他参数:
Map.apply(frame=products_combination, f=lambda record: search(record, k=10))
【讨论】:
以上是关于如何将输入参数传递给 AWS Glue Map.apply 函数的主要内容,如果未能解决你的问题,请参考以下文章
可以将哪些选项传递给 AWS Glue DynamicFrame.toDF()?
如何使用 GET 请求将参数传递给 AWS Lambda 函数?
RMarkdown:如何将参数传递给在 R 中定义为变量的 bash 块?