我需要删除所有日期值为0的行,其中相同的日期值为1。
df=spark.createDataFrame([("A1", "2016-10-01", 1), ("A1", "2016-10-01", 0), ("A1", "2016-10-05", 1), ("A3", "2016-10-06", 1), ("A3", "2016-10-07", 0)], ["id", "date", "value"])
+---+----------+-----+
| id| date|value|
+---+----------+-----+
| A1|2016-10-01| 1|
| A1|2016-10-01| 0|
| A1|2016-10-05| 1|
| A3|2016-10-06| 1|
| A3|2016-10-07| 0|
+---+----------+-----+
所需的Dataframe:注意 ID: A1
在 2016-10-01
有两个值,1和0。现在它的值只有1。
如果每个组的值为0的同一日期存在值1,则需要删除值0。
+---+----------+-----+
| id| date|value|
+---+----------+-----+
| A1|2016-10-01| 1|
| A1|2016-10-05| 1|
| A3|2016-10-06| 1|
| A3|2016-10-07| 0|
+---+----------+-----+
2条答案
按热度按时间rqcrx0a61#
只是需要一些
Window
魔术✨ulydmbyx2#