繁体   English   中英

如何检查字符串是否包含 dataframe 列中的任何单词

[英]how to check string contains any word from dataframe colum

我正在尝试查找 pandas 列的所有单元格值到特定字符串我该如何检查它?

有一个 dataframe 和一个字符串,想将整个 df 列搜索为字符串,它应该从列中返回匹配的元素

寻找像 MySQL 这样的解决方案

select * from table where "string" like CONCAT('%',columnname,'%')

Dataframe:

    area                   office_type
0        c d a (o)         S.O
1    dr.b.a. chowk         S.O
2   ghorpuri bazar         S.O
3     n.w. college         S.O
4  pune cantt east         S.O
5             pune         H.O
6   pune new bazar         S.O
7  sachapir street         S.O

代码:

tmp_df=my_df_main[my_df_main['area'].str.contains("asasa sdsd sachapir street sdsds ffff")]

在上面的示例“sachapir street”中,区域中有 pandas 列,并且它也在字符串中,它应该返回“sachapir street”以匹配单词。

我知道这应该是一个反向我尝试了我的代码

tmp_df=my_df_main["asasa sdsd sachapir street sdsds ffff".str.contains(my_df_main['area'])]

知道怎么做吗?

最后我使用“import pandasql as ps”做到了这一点

query = "SELECT area,office_type FROM my_df_main where 'asasa sdsd sachapir street sdsds ffff' like '%'||area||'%'"
tmp_df = ps.sqldf(query, locals())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM