此问题已在此处有答案:
Is there a way in pandas to remove duplicates from within a series?(5个答案)
6天前关闭
我需要一份所有非重复正则表达式匹配的列表。
考虑下面的框架:
Letter Actions
r1 a30,a30
r2 a30,a12-rf,a15,a15
r3 0
r4 a10,a93
r5 a13
我期望:
Letter Actions
r1 ['a30']
r2 ['a30','a12','a15']
r3 0
r4 ['a10','a93']
r5 ['a13']
我有下面,但它返回所有的模式匹配,而我不需要重复的:
import pandas as pd
df = pd.DataFrame(
[['r1', 'a30,a30'],
['r2', 'a30,a12-rf,a15,a15'],
['r3', '0'],
['r4', 'a10,a93'],
['r5', 'a13']],
columns=['Letter', 'Actions'])
df['Action_list'] = df['Actions'].str.findall(r'([a]\d{2})')
有一个答案here,但我需要比使用lambda更快的东西。
2条答案
按热度按时间4nkexdtk1#
您可以使用
set
删除重复项:图纸:
8xiog9wr2#
验证码
在
str.findall
后应用集列表(& L)产出:
示例代码