我有两个数据帧,df1
和 df2
。
对于 df1
的每一行,我需要在 df2
中查找一个值。我一直在尝试这样的事情——(下面的函数显示了示例操作)
def lookup(df2)
print df2.name
df1.foreach(lookup)
df1.foreach(lookup)
正在运行但未显示任何结果。
这可能是什么原因?
最佳答案
我假设您需要左侧 DF 的所有记录和右侧 DF 的匹配记录
你可以使用如下的连接条件
df1.join(df2,[<column name>],'left_outer')
如果您需要更多帮助,请发帖
left_outer join 会返回什么
LEFT OUTER 连接包含两个表中满足 WHERE 子句条件的所有行,与 INNER 连接结果集相同。此外,左表中没有右表中存在的匹配行的任何行也将包含在结果集中。
关于python - foreach 与 Pyspark 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47864074/