首页 > 解决方案 > 无法使用收集 RDD

问题描述

请问有谁知道这行代码的错误是什么?花几个小时搜索但没有成功修复它。提前谢谢你,

labels = RDD.map(lambda (a, b): a).collect()

语法错误

标签: pythonapache-sparkrdd

解决方案


如果您使用的是 python 3,则可能是关于 python 3不支持的元组解包。您也可以检查这个线程

假设您有 rdd 个元组:

RDD = spark.sparkContext.range(0, 1).map(lambda a: (a, a))

下面的代码将失败并出现SyntaxError: invalid syntax

RDD.map(lambda (a, b): a).collect()

但这将正常工作:

RDD.map(lambda a: a[0]).collect()

推荐阅读