[英]Pandas dataframe: Filter rows based on regex string search
我有一個 Pandas dataframe 有 1.28 億行,我需要找到一種有效的方法來過濾這個 dataframe 中的行。
我需要過濾所有包含“foo”的行。 “foo”可以在任何列中,但本質上,如果任何行有“foo”,則返回該行。
我做了這樣的事情:
final_rows = df[df['col1'].str.contains(string_to_search))] & df[df['col2' ].str.contains(string_to_search))] ..... etc.
但這沒有用。
我是 Pandas 的新手,如果這是一個非常基本的問題,我深表歉意。
你可以通過any
apply
m=df[['col1',...]].apply(lambda x : x.str.contains(string_to_search)).any(axis=1)
final_rows=df[m]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.