1. ホーム
  2. パイソン

[解決済み】pandasでDataFrameのdoes-not-containを検索する。

2022-04-18 14:30:27

質問

データフレームを以下の条件でフィルタリングする方法がわかりません。 df["col"].str.contains(word) しかし、私は逆に、そのセットの賛辞によってデータフレームをフィルタリングする方法があるかどうか疑問に思っています。 !(df["col"].str.contains(word)) .

を通して行うことができるのでしょうか? DataFrame メソッドを使用できますか?

どのように解決するのですか?

反転(~)演算子(ブーリアンデータのnotのような働きをする)を使うことができます。

new_df = df[~df["col"].str.contains(word)]

ここで new_df はRHSが返すコピーである。

containsは正規表現も受け付けます...。


上記でValueErrorが出る場合は、データ型が混在していることが原因だと思われますので、その場合は na=False :

new_df = df[~df["col"].str.contains(word, na=False)]

または

new_df = df[df["col"].str.contains(word) == False]