python - foreach 与 Pyspark 数据框

标签 python apache-spark-sql

我有两个数据帧,df1df2

对于 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 连接结果集相同。此外,左表中没有右表中存在的匹配行的任何行也将包含在结果集中。

enter image description here

关于python - foreach 与 Pyspark 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47864074/

相关文章:

python - 根据图像 python 内的边框裁剪图像

python - 将制表符分隔的文本文件读入 Pandas 数据帧时出现 RunTimeError

apache-spark - 使用 kotlin 编程 Apache spark 2.0

apache-spark - Spark 结构流和批处理是否相同?

python - 如何在 Django 中打印 'process status'?

python - OpenCV calcOpticalFlowFarneback源代码

python - Pygame Snake - 苹果在蛇体内产卵

apache-spark-sql - 在 azure 数据 block 中查询 sql server 表

python - 如何将嵌套的 Struct 列展开为多列?

apache-spark - 随机数在 Spark 中的表现如何