数据集列中的值集

时间:2017-10-10 12:57:59

标签: string pandas dataframe unique

所有!

我有一个数据框。一列包含如下字符串:'Product1,Product2,foo,bar'。

我已将它们拆分为','现在我有一个包含产品名称列表的列。

如何获得一组独特的产品名称?

1 个答案:

答案 0 :(得分:0)

首先展平列表列表,然后应用set并最后转换为list

df = pd.DataFrame(data = {'a':['Product1,Product1,foo,bar','Product1,foo,foo,bar']})

print (df)
                           a
0  Product1,Product1,foo,bar
1       Product1,foo,foo,bar

a=list(set([item for sublist in df['a'].str.split(',').values.tolist() for item in sublist]))
print (a)
['bar', 'foo', 'Product1']

如果每行需要唯一值:

df = df['a'].str.split(',').apply(lambda x: list(set(x)))
print (df)

0    [bar, foo, Product1]
1    [bar, foo, Product1]
Name: a, dtype: object