切割大文字資料檔

用法說明

  1. 讀取大文字資料檔 (csv)
  2. 每 10 萬筆切割成新資料檔 (csv)

原始碼

# -*- coding: utf-8 -*- # NHI-OO-IO import time startTime = time.clock() dbFilePathIN = 'Data' dbFilePathOUT = 'Outputs' dbFileNameIN = '%s/%s' % (dbFilePathIN, 'NHI-OO.csv') numRecord = 100000 countFile = 1 with open(dbFileNameIN, 'r') as dbFileIN: dbFileOUT = None countRecord = 0 dbHeader = dbFileIN.readline() for dbLine in dbFileIN: if (countRecord==0): dbFileNameOUT = '%s/Outputs/NHI-OO-%d.csv' % (dbFilePathOUT, countFile) dbFileOUT = open(dbFileNameOUT, 'w') dbFileOUT.write(dbHeader) dbFileOUT.write(dbLine) countRecord += 1 if (countRecord >= numRecord): dbFileOUT.close() print countFile, countRecord = 0 countFile += 1 if dbFileOUT is not None: print '' dbFileOUT.close() dbFileIN.close() stopTime = time.clock() print (stopTime - startTime)