Настройка
someList = [*'ABCD']
df = pd.DataFrame(dict(text=[*map(list, 'AB CD AF EG BH IJ ACDE'.split())]))
df
text
0 [A, B]
1 [C, D]
2 [A, F]
3 [E, G]
4 [B, H]
5 [I, J]
6 [A, C, D, E]
Numpy и __contains__
i = np.arange(len(df)).repeat(df.text.str.len())
a = np.zeros(len(df), int)
np.add.at(a, i, [*map(someList.__contains__, np.concatenate(df.text))])
df.assign(**{'in': a})
text in
0 [A, B] 2
1 [C, D] 2
2 [A, F] 1
3 [E, G] 0
4 [B, H] 1
5 [I, J] 0
6 [A, C, D, E] 3
map
lambda
и __contains__
df.assign(**{'in': df.text.map(lambda x: sum(map(someList.__contains__, x)))})
text in
0 [A, B] 2
1 [C, D] 2
2 [A, F] 1
3 [E, G] 0
4 [B, H] 1
5 [I, J] 0
6 [A, C, D, E] 3