0

我有两个 pyspark 数据框。我想从 vindf.tx_hash 中不存在其“哈希”的 voutdf 中选择所有记录

如何使用 pyspark 数据框执行此操作。?我尝试了半联接,但最终出现内存不足错误。

voutdf = sqlContext.createDataFrame(voutRDD,["hash", "value","n","pubkey"])

vindf = sqlContext.createDataFrame(vinRDD,["txid", "tx_hash","vout"])
4

1 回答 1

3

你可以通过left-anti加入来做到这一点:

df = voutdf.join(vindf.withColumnRenamed("tx_hash", "hash"), "hash", 'left_anti')

左反加入:

它从左侧数据集中获取在右侧数据集中没有匹配的所有行。

于 2019-12-04T10:03:48.617 回答