在维护订单时,我想从列中的列表中删除重复对:
例如,输入为:
cola. colb
1. [sitea,siteb,sitea,siteb;sitec,sited,sitec,sited]
预期输出是每个“;”之前的唯一元素象征
cola. colb
1. [sitea,siteb;sitec,sited]
我试着根据;符号和为列表创建一个集合,但它不起作用
df['test'] = df.e2etrail.str.split(';').map(lambda x : ','.join(sorted(set(x),key=x.index)))
我还尝试了以下方法
df['test'] = df['e2etrail'].apply(lambda x: list(pd.unique(x)))
你知道怎么做吗
您可以按条带删除
[]
,然后先按,
或;
拆分,然后使用您的解决方案:如果需要输出列表:
最终,我将列表转换为系列,删除了重复项并再次加入系列,如下所示:
相关问题 更多 >
编程相关推荐