#前提・実現したいこと
pandasのDataFrameの中で、特定の要素を含む行を全て抽出したいのですが、方法が分かりません。
str.containsがやりたいことに最も近いのですが、カラムを指定しないとできません。
元データは何千万行何百列にわたるので、カラムを一個一個指定してstr.containsで判定するのではなく、一度に抽出する方法があれば知りたいです。
#試したこと
例えば、下記のように"li"を含むすべての行を1度に抽出したいのですが、str.containsではカラムを指定しないと実現できません。
本来やりたいデータは何千万行何百列にわたるのですが、説明のため下記のような簡単な例にしております。
python
1dfの構造例: 2name1,name2,age,state,point 3Alice,John,24,NY,64 4Bob,Alice,42,CA,92 5Charlie,Michel,18,CA,70 6Dave,Alice,68,TX,70 7Ellen,John,24,CA,88 8Frank,David,30,NY,57 9 10print(df["name1"].str.contains('li')) 11# 0 True 12# 1 False 13# 2 True 14# 3 False 15# 4 False 16# 5 False 17# Name: name, dtype: bool 18 19print(df.str.contains('li')) 20期待する結果: 21# 0 True 22# 1 True 23# 2 True 24# 3 True 25# 4 False 26# 5 False 27# Name: name, dtype: bool 28 29 30
回答2件
あなたの回答
tips
プレビュー