Python 仅在新列中的列中显示非重复字符(熊猫)

Python 仅在新列中的列中显示非重复字符(熊猫),python,pandas,Python,Pandas,我在df中有一列包含字符串,比如ABABAB,我想在这样的df中创建一个新列,它只包含这些字符串的非重复字符,在上面的示例中,就是AB 我尝试了“”。join(),但这在我收到一条错误消息时不起作用,该消息表示需要字符串 说明性预期结果: Column_1 Column_2 ABABAB AB KGKGKG KG ACACAC AC PCTPCTPCT PCT 请记住,在某些情况下,唯一的字符不仅仅是

我在df中有一列包含字符串,比如ABABAB,我想在这样的df中创建一个新列,它只包含这些字符串的非重复字符,在上面的示例中,就是AB

我尝试了“”。join(),但这在我收到一条错误消息时不起作用,该消息表示需要字符串

说明性预期结果:

  Column_1     Column_2
   ABABAB         AB
   KGKGKG         KG
   ACACAC         AC
   PCTPCTPCT      PCT
请记住,在某些情况下,唯一的字符不仅仅是两个


提前谢谢你

看看这是否是您想要的:

df["Column_2"] = df["Column_1"].apply(lambda x: "".join(set(list(x))))
df
    Column_1    Column_2
0   ABABAB  AB
1   KGKGKG  KG
2   ACACAC  AC
3   PCTPCTPCT   PTC

如果您不关心顺序,可以使用集合来实现这一点:它们只保留iterable的唯一项(例如字符串)。然后将集合连接在一起,使其成为字符串:

df['Column_1'].apply(lambda x: ''.join(set(x)))
#0    BA
#1    GK
#2    CA
#3    CTP

我们不知道如何在不查看原始代码的情况下对现有代码库进行更改。请张贴,并充分解释需要修改的内容。显示errormessage和确切的stacktrace,以及足够的代码来重现它。享受这不是一个微不足道的问题。看,字母的顺序重要吗
PCTPCTPCT
-->
CTP
TPC
PCT
重复项是否重要
ABBABB
->
AB
ABB
不适用于
'ABBABB'
:也不保证保持字母顺序,因为集合未排序,可能会返回PCAPCA的ACP-也不适用于没有重复的
'ABCDEFE'
,您能否澄清?正如预期的那样,它输出了
'AB'
,对吗?在我回复后,你的评论似乎发生了变化。我已经在我的回答中写道,只有在你不关心顺序的情况下(他没有具体说明应该是重要的)它才有效。他说他想要不重复的字符,我将其解释为唯一的字符,这实际上就是它返回的结果,对吗@PatrickArtnerI要求澄清。我以不同的方式解读这个问题——在得到澄清之前,我将编辑我的DVD不适用于
“abbab”
:不保证保持字母有序,因为集合未排序,可能会返回PCAPCA的ACP-也不适用于
“ABCDEFE”
没有重复的
“PCT”
都是重复字符。它们在
'PCTPCTPCT'
中出现三次-所寻找的是不重复的最短“序列”-您的代码将从序列中删除重复的字母-因此对
'abbabb'
不起作用,它可能会返回
'ABB'
,但会给出
'AB'
'BA'