python - 如何根据条件过滤掉整个组?

标签 python pandas

我想删除 created_date 列中没有过去一年任何值的组。数据如下:

+--------+----------------+-----------------------+---------------------+
| class  |     title      |      description      |    created_date     |
+--------+----------------+-----------------------+---------------------+
| ClassA | ClassA Title 1 | Class A Description 1 | 2017-06-20 21:59:07 |
| ClassA | ClassA Title 2 | Class A Description 2 | 2015-06-20 21:59:07 |
| ClassA | ClassA Title 3 | Class A Description 3 | 2014-06-20 21:59:07 |
| ClassB | ClassB Title 1 | Class A Description 1 | 2016-06-20 21:59:07 |
| ClassB | ClassB Title 2 | Class A Description 2 | 2015-06-20 21:59:07 |
| ClassB | ClassB Title 3 | Class A Description 3 | 2014-06-20 21:59:07 |
| ClassC | ClassC Title 1 | Class C Description 1 | 2017-06-20 21:59:07 |
| ClassC | ClassC Title 2 | Class C Description 2 | 2016-06-20 21:59:07 |
| ClassC | ClassC Title 3 | Class C Description 3 | 2015-06-20 21:59:07 |
+--------+----------------+-----------------------+---------------------+

如果您在上面的数据中看到,只有ClassB组在过去一年没有任何created_date。我想过滤掉整个组 ClassB 所以我最终只有 6 条记录。

我尝试使用过滤器,但不确定如何处理 lamda 内的分组:

df.groupby(["class"]).filter(lambda group: ...))

最佳答案

假设您的截止日期是日期

f = lambda df: not df[df.created_date >= date].empty
df.groupby('class').filter(f)

关于python - 如何根据条件过滤掉整个组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45221082/

相关文章:

python - 返回模型 Django Rest Framework 的键/属性 JSON 对象而不是 JSON 数组

python - 如何在 Python 中打开外部程序

每个线程使用不同设置的 Python 多线程

python - 在 Pandas 的一列中切片字符串

python - 打字错误 : Failed in nopython mode pipeline (step: nopython frontend)

python - Python 中多行中非零值的计数?

python - 在Python中查找句子内的(可能是多个单词的)短语

python - 根据另一列的值从一列中提取模式

python - ValueError : Length mismatch: Expected axis has 6 elements, 新值有 1 个元素

python - 删除已交换列值的重复行