【发布时间】:2014-10-06 10:13:17
【问题描述】:
我想只保留在第二个表中引用了部门 ID 的员工。
Employee table
LastName DepartmentID
Rafferty 31
Jones 33
Heisenberg 33
Robinson 34
Smith 34
Department table
DepartmentID
31
33
我尝试了以下代码,但不起作用:
employee = [['Raffery',31], ['Jones',33], ['Heisenberg',33], ['Robinson',34], ['Smith',34]]
department = [31,33]
employee = sc.parallelize(employee)
department = sc.parallelize(department)
employee.filter(lambda e: e[1] in department).collect()
Py4JError: An error occurred while calling o344.__getnewargs__. Trace:
py4j.Py4JException: Method __getnewargs__([]) does not exist
有什么想法吗?我正在使用带有 Python 的 Spark 1.1.0。不过,我会接受 Scala 或 Python 的答案。
【问题讨论】:
-
您是否要求您的部门列表是 RDD?
-
并非如此。部门列表是从 HDFS 加载的,但不是很大。
标签: python scala apache-spark