パイソン| 言葉の予め指定されたリストに一致しているデータフレーム内の単語を数えます

Geomariachi:

私はスピーチからなるデータフレームの列内の単語をカウントしようとしています。私は、例えば、異なるテーマに関連した言葉でリストを作成しました:

Care = [safe, peace, compassion, empath, care, caring, protect, shield, shelter]

今私は、合計では、「ケア」リスト内の単語は、各音声で発生回数を、カウントし、各列の数とDFの最後に新しい列を追加したいと思います。

私は今、このコードを使用しています。

df = df.assign(Care=df['speech'].str.count('|'.join(care)))

しかし、イムは、それがaswell私に部分的な一致を与えることを疑います。私は言葉が私のリストにある単語全体が一致する場合にのみ、一致を取得したいと思います。何か案は?

Sajan:

音声は句読点の自由であると仮定すると、このかもしれない作業 -

df['count'] = df['speech'].apply(lambda x: len([val for val in x.split() if val in Care]))

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=391734&siteId=1