python - 根据日期从 Pandas 数据框中删除行
问题描述
我正在尝试使用熊猫创建一个数据框,并且删除日期晚于 201702 年。数据框的结构如下
Date Account Number
1 2019-02-21 123841234
2 2017-01-01 193741927
3 2015-03-04 981237432
4 2018-05-29 134913473
5 2012-05-12 138749173
6 2009-01-04 174917239
我正在阅读 csv (data.csv) 并尝试删除 2017-02-28 之后的任何日期,如下所示:
data_csv = pd.read_csv('data.csv')
data_csv[data_csv.DATE < '2017-02-28']
这应该与 YYYY-MM-DD 的日期格式一起正常工作,还是我必须对列格式做一些事情以确保从数据框中删除这些行?
感谢您的时间。
解决方案
我建议您将字符串转换为 a Timestamp
,假设data_csv.Date
也是 a Timestamp
:
result = data_csv[data_csv.Date < pd.to_datetime('2017-02-28')]
print(result)
输出
Date Account Number
1 2017-01-01 193741927
2 2015-03-04 981237432
4 2012-05-12 138749173
5 2009-01-04 174917239
推荐阅读
- dbunit - DBRider 的问题:NoSuchTableException “表 'MY_NAME_TABLE' 在模式 'null' 中不存在”
- django - 当相关(外键)对象发生变化时如何可靠地运行自定义代码
- javascript - 组件的孩子没有出现
- python - 如何从字典python列表中获取所有id
- java - 如何在有向图中从特定顶点执行 BFS 或 DFS,其中某些顶点的出度为 0?
- c# - LINQ 语句以 100 个块执行 DynamicTableEntities 的嵌套列表
- python - Pandas 通过保留一列的第一个元素和另一列的最后一个元素来合并
- xml - 刷新存储在 Google Docs 上的 KML 文件
- prometheus - 普罗米修斯:我如何用 2 个不同的指标求和
- python - 如果用户输入的涂料不等于字母打印错误消息