pandas excel合並去重


一、概述

現有一個excel文件examples.xlsx,內容如下:

 

 

合並去重后,效果如下:

 

 

那么需求如下:

公司去重,保留一個

多個地區合並為一行,用逗號隔開

收入進行累計計算

最后將統計結果,保存到新的excel中。

 

二、演示

完整代碼如下:

# !/usr/bin/python3
# -*- coding: utf-8 -*-

import pandas as pd

def computer(x):  # 數據計算
    return pd.Series({
        # 去重
        '公司': ','.join(x['公司'].unique()),
        '地區':
            ','.join(list(set((','.join(x['地區']).split(','))))),
        '收入': sum(x['收入']),
    })

# 讀取原始數據excel
_df = pd.read_excel('examples.xlsx', sheet_name='Sheet1')
# 使用groupby進行分組
res = _df[['公司', '地區', '收入']].groupby(['公司'], as_index=False).apply(computer).reset_index()
# 保存到新的excel中
res.to_excel('數據匯總.xlsx', index=False, header=True, encoding='gbk', sheet_name='Sheet1')

執行代碼,它會生成一個文件據匯總.xlsx

打開它,效果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM