我的熊猫dataframe
是这样的:
<表类>
微博
标签
bla banana bla bla 23
[banana 23]
bla bla apple
[apple]
表类>
我会在列表推导式中使用正则表达式:
import re
df['tweet2'] = [re.sub(fr"b(?:{'|'.join(l)})b", '', t)
for t,l in zip(df['tweet'], df['hashtag'])]
输出(为清晰起见,作为新列tweet2):
tweet hashtag tweet2
0 bla banana bla bla 23 [banana, 23] bla bla bla
1 bla bla apple [apple] bla bla
以不同的方式处理空格:
import re
df['tweet2'] = [' '.join(x for x in re.split(fr"s*b(?:{'|'.join(l)})bs*", t) if x)
for t,l in zip(df['tweet'], df['hashtag'])]
输出:
tweet hashtag tweet2
0 bla banana bla bla 23 [banana, 23] bla bla bla
1 bla bla apple [apple] bla bla