【问题标题】:Remove duplicate words in strings in column in every row in data frame删除数据框中每一行的列中字符串中的重复单词
【发布时间】:2019-03-10 15:37:15
【问题描述】:

我正在尝试删除每行数据框中字符串中的重复单词。

假设我的数据框如下所示:

In:
Yes Yes Absolutely
No No Nope   
Win Win Lose



  for row in df.iterrows():
        row["Sentence"] = (list(set(row["Sentence"])))

Desired Out:
Yes Absolutely
No Nope
Win Lose

如何清理每一行以删除重复的字符串。上面的代码我试过了。

如果任何文档或资源的链接能够引导我走向正确的方向,我们将不胜感激。谢谢。

【问题讨论】:

    标签: python pandas loops dataframe data-cleaning


    【解决方案1】:

    你可以使用(假设列名是0):

    from collections import OrderedDict
    df[0].str.split().apply(lambda x: ','.join(OrderedDict.fromkeys(x).keys()))
    
    0    Yes,Absolutely
    1           No,Nope
    2          Win,Lose
    

    注意,你可以使用 set as:

    df[0].str.split().apply(lambda x: ','.join(list(set(x))))
    

    但是set不保证顺序。

    【讨论】:

    • 上面写着7分钟接受一个答案,时间到了我会点击它!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-03
    • 2013-12-15
    • 2012-03-14
    • 1970-01-01
    • 2022-12-03
    相关资源
    最近更新 更多