【问题标题】:Get two columns of question answer? python datafra得到两列问题答案?蟒蛇数据
【发布时间】:2023-01-20 14:51:08
【问题描述】:

我有数据框,其中“A”1 - 客户端,B - 管理员 我需要按顺序合并第 1 行中的消息,并在数据帧中按顺序合并第 2 行 - 管理员响应。

df1 = pd.DataFrame({'A' : ['a', 'b', 'c', 'd', 'e'],
                       'B' : [1, 2, 2, 1, 2]})

df1

    A   B
0   a   1
1   b   2
2   c   2
3   d   1
4   e   2


I need to get in the end this dataframe:

df2 = pd.DataFrame({'A' : ['a', 'd'],
                       'B' : ['b, c', 'e' ]})

Out:

    A   B
0   a   b, c
1   d   e

我不知道该怎么做

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    通过将 1 与累积总和进行比较并聚合第一个值并将所有值加入新列而不是第一个值来创建助手组:

    df = (df1.groupby(df1['B'].eq(1).cumsum())
             .agg(A = ('A','first'), B= ('A',lambda x: ','.join(x[1:])))
             .reset_index(drop=True))
        
    print (df)
       A    B
    0  a  b,c
    1  d    e
    

    【讨论】:

      猜你喜欢
      • 2022-06-13
      • 1970-01-01
      • 2011-07-28
      • 1970-01-01
      • 2021-10-10
      • 1970-01-01
      • 2022-06-17
      • 2021-05-05
      • 1970-01-01
      相关资源
      最近更新 更多