1

我正在从事一项 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() 缺少 1 个必需的位置参数:'record'”

如何将参数传递给 Map.apply 函数?我已经浏览了[这里]的文档,但在那里找不到我的解决方案。1

4

2 回答 2

0

我最终使用了 Spark udf 而不是 DynamicFrame.Map.apply。为我工作。

于 2020-12-15T13:49:22.297 回答
0

您始终可以使用 lambda 传递其他参数:

Map.apply(frame=products_combination, f=lambda record: search(record, k=10))
于 2022-01-21T15:03:34.940 回答