【发布时间】:2021-06-04 17:43:43
【问题描述】:
我有输入:
数据框 A:
valueX valueY
1 2
4 3
-1 4
数据框 B:
startX endX startY endY
0 2 2 4
3 5 -2 -1
-2 0 0 4
我想获得输出,将isIn 列添加到 A:
valueX valueY isIn
1 2 True
4 3 False
-1 4 True
条件 startX
我试试这个:
dataframeA.join(dataframeB).withColumn("isIn",sf.when((dataframeA["valueX"] > dataframeB["startX"]) & (dataframeA["valueX"] < dataframeB["endX"]) & (dataframeA["valueY"] > dataframeB["startY"]) & (dataframeA["valueY"] < dataframeB["endY"]),
True).otherwise(False)))
但我必须删除重复的 isIn 和 valueX、valueY 行。
【问题讨论】:
标签: apache-spark pyspark apache-spark-sql