在以下数据框中,如何选择日期匹配的行' 2018-06%'?
Date Cost Source
2018-06-01 00:00:77 0.03 RFP
2018-06-01 00:05:77 0.01 RFP
2018-06-01 04:09:77 0.90 EFO
2018-05-02 06:99:08 0.07 THP
2018-07-01 09:05:79 0.20 RFP
预期输出
Date Cost Source
2018-06-01 00:00:77 0.03 RFP
2018-06-01 00:05:77 0.01 RFP
2018-06-01 04:09:77 0.90 EFO
答案 0 :(得分:2)
看起来您的时间戳不好,这会导致很难转换为日期时间并按月搜索。
我的第一个建议是将数据修复到上游,但如果这不是一个选项,或者如果你设置使用正则表达式匹配,你可以简单地使用^2018-06
:
df[df.Date.str.match(r'^2018-06')]
Date Cost Source
0 2018-06-01 00:00:77 0.03 RFP
1 2018-06-01 00:05:77 0.01 RFP
2 2018-06-01 04:09:77 0.90 EFO
正则表达式很简单:
^ # Asserts beginning of string
2018-06 # matches your date