2015-08-08 95 views
-1

我有一個包含大約100萬行的CSV文件。 假設它有像根據數據格式合併CSV文件數據單元

Name  | Age | Salary 
name 1  52  10000 
name 2  55  10043 
name 3  50  100054 
name 2  55  10023 
name 1  52  100322... 

和即將。

但我需要合併冗餘的細節。 和需要像

Name  | Age | Salary 
name 1  52  110322* 
name 2  55  20066 * 
name 3  50  100054 

一個輸出您可能會注意到重複名稱1和名稱2個細節被合併和薪金值相加。所以我正在尋找一種方式來這種變化應用到我的原始數據組。所以我需要一個python腳本來解決我的問題。

+0

顯示你不工作的代碼。 –

+0

我在這裏沒有看到問題。只有要求。有問題嗎? – Paul

回答

1

首先,您並未合併但是聚合數據集。

考慮使用pandas包。將csv作爲數據框導入,然後使用group by sum()函數來彙總Salary字段和其他數量值。適用同樣的原則等培訓相關領域:

#!/usr/bin/python 
import pandas as pd 

df = pd.read_csv('C:\\Path\\To\\InputCSV.csv') 

newdf = df.groupby('Name', 'Age').sum() 

newdf = to_csv('C:\\Path\\To\\OutputCSV.csv') 
1

使用以下

>>> import pandas as pd 
>>> data = pd.read_csv('data.csv') 
>>> data_merged = data.groupby(['Name', 'Age']).sum().reset_index() 
>>> data_merged 

    Name Age Salary 
0 name 1 52 110322 
1 name 2 55 20066 
2 name 3 50 100054