将Scala RDD映射函数转换为Pyspark

时间:2020-11-04 01:51:46

标签: python scala apache-spark pyspark

我正在尝试将以下功能从Scala转换为Pyspark ::

DF.rdd.map(args => (args(0).toString, args.mkString("|"))).take(5)

为此,我正在执行以下地图功能:

DF.rdd.map(lambda line: ",".join([str(x) for x in line])).take(5)

但是Scala代码为我提供了数组结构,而在Python中却得到了定界的结果。

如何将上述scala代码转换为python?

1 个答案:

答案 0 :(得分:2)

您的Scala代码从args返回2个元素列表。

您的python代码返回逗号连接的字符串

这将返回相同的内容

lambda args: [str(args[0]), "|".join(map(str, args))]