1. 程式人生 > >用pandas裡的groupby函式實現把一個大檔案按某一列的型別分成多個檔案

用pandas裡的groupby函式實現把一個大檔案按某一列的型別分成多個檔案

上圖說話,淺顯易懂

大檔案:

可以發現上圖“單元這一行”有三個不同的值,我想以這一列為主鍵,分成三個檔案,檔名以主鍵內容命名,輸出如下圖:

對於GO7-33-286.csv、GO7-35-226.csv、GO7-37-166.csv這三個檔案內容,分別如下:

實現程式碼如下:

# -*- coding: utf-8 -*-
"""
Created on Thu Nov 30 10:41:19 2017

@author: wq
"""

import pandas as pd

df1 = pd.read_csv('input.csv', encoding='gbk')

groups = df1.groupby(df1[u'單元'])

for group in groups:
    group[1].to_csv(str(group[0]) + '.csv', index=False, encoding='gbk')


高交會館就