1
创建使用子集下面条件数据帧的等效熊猫 - str.contains()在大熊猫查询
subset_df = df_eq.loc[(df_eq['place'].str.contains('Chile')) & (df_eq['mag'] > 7.5),['time','latitude','longitude','mag','place']]
想在Pandas.However不知道如何复制STR使用查询()来复制上述子集.contains()在Pandas查询中相当。 “像”,在查询似乎没有工作
query_df = df_eq[['time','latitude','longitude','mag','place']].query('place like \'%Chile\' and mag > 7.5')
place like '%Chile'and mag >7.5
^
SyntaxError: invalid syntax
任何帮助将不胜感激
我在这里抓着吸管,但是如果你设置'engine ='python'',你可以使用Python的'in'运算符。如果它起作用,它可能最终会导致一个非常低效的查询(通常'pandas'试图使用'numexpr'来加快速度,但'numexpr'不支持'in'运算符......) – mgilson
AFAIK,SQL 'like'运算符还没有在pandas的'query()'方法中实现,所以你不能用'query()'方法来实现 – MaxU
感谢您的评论。对于运算符而言,是不存在的,所以解决方法仍然是str 。载() – raul