Advertisement

使用 pandas 的 apply 函数将多个行合并为一行数据

阅读量:
复制代码
    import string
    
    # 1、构造待处理数据
    data = pd.DataFrame({"序号": [1, 1, 3, 4, 1, 3, 3, 2, 3, 4],
                     "值": list(string.ascii_lowercase[:10])})
    data
    # Out[109]: 
    #    序号  值
    # 0   1  a
    # 1   1  b
    # 2   3  c
    # 3   4  d
    # 4   1  e
    # 5   3  f
    # 6   3  g
    # 7   2  h
    # 8   3  i
    # 9   4  j
    
    # 2、将 “序号” 相同的行的 “值”,使用逗号进行连接
    # 方法一:
    data.groupby("序号").apply(lambda x: ",".join(x["值"]))                     
    # Out[110]: 
    # 序号
    # 1      a,b,e
    # 2          h
    # 3    c,f,g,i
    # 4        d,j
    # dtype

全部评论 (0)

还没有任何评论哟~