我需要在pandas数据格式,以便特定的字符串列至少包含一个提供的子字符串列表中的一个。子字符串可能具有不寻常的/正则字符。比较不应涉及regex,而且不区分大小写。
pandas
例如:
lst = ['kdSj;af-!?', 'aBC+dsfa?\-', 'sdKaJg|dksaf-*']
我现在用的口罩是这样的:
mask = np.logical_or.reduce([df[col].str.contains(i, regex=False, case=False) for i in lst])df = df[mask]
我的数据很大(~1mio行)和lst长度是100。有没有更有效的方法?例如,如果lst,我们就不必测试该行的任何后续字符串。
lst
熊猫对串联多个子串的过滤
FFIVE
智慧大石
相关分类