我正在尝试将以下功能从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?
答案 0 :(得分:2)
您的Scala代码从args返回2个元素列表。
您的python代码返回逗号连接的字符串
这将返回相同的内容
lambda args: [str(args[0]), "|".join(map(str, args))]