我需要过滤一个巨大的熊猫数据框,该数据框在列表的“ A”列中包含两个单词。 我已经只考虑了word_list中的一个值对它进行了过滤,但是我没有弄清楚如何对两个值进行处理。
new_df = df[df["A"].apply(lambda x: any(i in x.split() for i in word_list))]
谢谢大家
答案 0 :(得分:0)
您可以先按列进行if FOO != 0
...
然后explode
,按get_dummies
进行sum
,然后按列进行level
,如果行返回值大于2,则应选择< / p>
sum
或者我们可以做df[df["A"].explode().str.get_dummies().\
sum(level=0).gt(0).reindex(columns=word_list).sum(axis=1).ge(2)]
sklearn.MultiLabelBinarizer