我想从元组列表中获得不同的值。假设我们有以下生成的元组列表,

df_clustering_dupliacteRemove.groupby('cluster').agg(tuple).sum(1).map(natsorted).map(tuple)


输出量

 604                             (GM0051, GM0178, GM0191)
 605                     (GM0134, GM0267, GM0351, GM0615)
 606                             (GM0180, GM0474, GM0512)
 607                             (GM0216, GM0471, GM0586)
 608                             (GM0373, GM0373, GM0373)


如果看第608个连音,则元素是相同的。我想将这些元素设为一个(获取唯一/不同的值)。

我需要的样本输出

 604                             (GM0051, GM0178, GM0191)
 605                     (GM0134, GM0267, GM0351, GM0615)
 606                             (GM0180, GM0474, GM0512)
 607                             (GM0216, GM0471, GM0586)
 608                             (GM0373)

最佳答案

这对我有用。

> myDf

    COL
0   (a, b, c)
1   (d, e, f)
2   (a, a)
3   a
4   (c, c, c)

> result = pd.DataFrame(myDf.apply( lambda x : tuple(set(x[0])), axis=1))
> result

0
0   (a, b, c)
1   (f, e, d)
2   (a,)
3   (a,)
4   (c,)

10-08 05:03