我有一个员工文件,其中包含如下数据:
Name: Age:
David 25
Jag 32
Paul 33
Sam 18
我将其加载到 Apache Spark 中的 dataframe
中,并按以下方式过滤值:
employee_rdd=sc.textFile("employee.txt")
employee_df=employee_rdd.toDF()
employee_data = employee_df.filter("Name = 'David'").collect()
+-----------------+-------+
| Name:| Age:|
+-----------------+-------+
|David |25 |
+-----------------+-------+
但是当我尝试做这样的事情时:
emp_Name='Sam'
并将此名称传递给过滤器,如下所示:
employee_data = employee_df.filter("Name = 'emp_Name'").collect
但这给了我空列表。
最佳答案
这可以在 scala 中完成,你可以将其更改为 python
val emp_name = "Sam"
val employee_data = employee_df.filter(col("Name") === emp_name)
希望这对您有所帮助!
关于apache-spark - 如何将参数动态传递给 Apache Spark 中的过滤函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44878449/