Pandas查询功能与like和date

use*_*057 5 python regex pandas

我有一个python函数,它获取一个pandas数据帧并通过DataFrame的"查询"函数对其执行一个condiotion.

如此简单的条件,如=,!=和所有它没关系.

但是我希望它能够用"喜欢"来执行条件.那可能吗?

另外,我想检查一些列是否大于"现在"......

我怎么能这样做?

Max*_*axU 9

演示:

In [166]: now = pd.datetime.today()

In [167]: df
Out[167]:
        date              s
0 2017-01-18  sample string
1 2017-12-01      blah-blah
2 2017-08-17          a key

In [168]: df.query("s.str.contains('key')", engine='python')
Out[168]:
        date      s
2 2017-08-17  a key

In [169]: df.query("s.str.contains('key') or date > @now", engine='python')
Out[169]:
        date          s
1 2017-12-01  blah-blah
2 2017-08-17      a key
Run Code Online (Sandbox Code Playgroud)


jez*_*ael 8

我认为LIKE功能没有实现,以query原生的方式,需要的contains,match类似的功能.

与今天比较:

now = pd.datetime.today()

df.query("col > @now")
Run Code Online (Sandbox Code Playgroud)