我有以下Dataframe:
+--------+----------+----------+--------+----------+
|SID |StartDate |EndDate |CID |Date Added|
+--------+----------+----------+--------+----------+
|1001 |2021-04-05|2021-04-05|1002 |2021-03-26|
|1001 |2021-03-30|2021-03-31|1002 |2021-03-26|
|1001 |2021-04-07|2021-04-09|1002 |2021-03-26|
|1004 |2021-04-05|2021-04-05|1003 |2021-03-26|
|1005 |2021-04-06|2021-04-06|1006 |2021-03-26|
|1001 |null |null |null |2021-03-29|
|1001 |2021-04-05|2021-04-05|1002 |2021-03-29|
|1001 |2021-03-30|2021-03-31|1002 |2021-03-29|
+--------+----------+----------+--------+----------+
我要做的是如果记录有空值 SID
在 StartDate
, EndDate
以及 CID
,它将删除空值的行和其他记录 SID
这比 Date Added
. 结果是这样的。
+--------+----------+----------+--------+----------+
|SID |StartDate |EndDate |CID |Date Added|
+--------+----------+----------+--------+----------+
|1004 |2021-04-05|2021-04-05|1003 |2021-03-26|
|1005 |2021-04-06|2021-04-06|1006 |2021-03-26|
|1001 |2021-04-05|2021-04-05|1002 |2021-03-29|
|1001 |2021-03-30|2021-03-31|1002 |2021-03-29|
+--------+----------+----------+--------+----------+
我知道过滤器可能会有帮助,但我真的不知道如何与我提到的其他条件做它。有人能帮忙吗?
2条答案
按热度按时间mccptt671#
您可以添加
nulldate
三列为空的日期列,并进行筛选以获取该日期不存在的行,或DateAdded
大于或等于该日期,当然,三列不为空的行。g2ieeal72#
您可以筛选中包含null的特定行
StartDate
,EndDate
以及CID
然后使用left_anti
加入: