pandas多行合并成一行

文章目录

构建df

import pandas as pd

df = pd.DataFrame(
    { '水果': ['苹果', '香蕉', '西瓜', '葡萄', '柚子', '芒果'], '公司': ['A1', 'A1', 'A2', 'A2', 'A2', 'A3'], '重量': [1, 2, 3, 4, 5, 6],
     '数量': [3, 2, 5, 10, 10, 6]})

df结构

《pandas多行合并成一行》

把相同公司的行合并成一行

print(df.groupby(['公司']).agg({ '水果': [', '.join], '数量': lambda x: list(x),
                        '重量': lambda x: list(x)}).reset_index())

效果

《pandas多行合并成一行》

代码汇总

# pandas多列合并成一行
import pandas as pd

df = pd.DataFrame(
    { '水果': ['苹果', '香蕉', '西瓜', '葡萄', '柚子', '芒果'], '公司': ['A1', 'A1', 'A2', 'A2', 'A2', 'A3'], '重量': [1, 2, 3, 4, 5, 6],
     '数量': [3, 2, 5, 10, 10, 6]})
# print(df)
print(df.groupby(['公司']).agg({ '水果': [', '.join], '数量': lambda x: list(x),
                        '重量': lambda x: list(x)}).reset_index())
    原文作者:奋斗中的打工人
    原文地址: https://blog.csdn.net/summerriver1/article/details/125693263
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞