代码之家  ›  专栏  ›  技术社区  ›  beetlej

分组并将列与“\n”[重复]组合

  •  0
  • beetlej  · 技术社区  · 2 周前

    我想合并专栏 value 具有 \n 如果 name 是一样的。

    例如

    import pandas as pd
    
    data = [
        ['A','x'],
        ['A','y'],
        ['A','z'],
        ['B','m'],
        ['B','n'],
        ['B','o'],
        ['B','p']
        ]
    
    df = pd.DataFrame(data,columns=['name','value'])
    print(df)
    dfg = df.groupby('name')
    
    

    预期输出:

      name value
    0    A     x
               y
               z
    1    B     m
               n
               o
               p
    
    
    1 回复  |  直到 2 周前
        1
  •  1
  •   SteelFeather    2 周前

    您可以简单地在groupby之后执行一个application来联接值。我不确定“\n”在col内部会如何表现,但请尝试一下。我没有运行它,但这只是给你一个如何做的想法。

    dfg = df.groupby(['name'])['value'].apply(",".join).reset_index()