假设需要处理大文件,又不想依赖数据库,那么将文件分割也不失为一种解决方案。下面简单介绍将数据以月分割的python实现方法。
#引入依赖库
import pandas as pd import datetime import os
def splitData(): user_pay_path = "../dataset/IJCAI-17/dataset/user_pay.txt" columnsName = ['user_id','shop_id','time_stamp'] startTime = '2015-07-01 00:00:00' endTime = '2016-11-01 00:00:00'
#pandas下一个很好用的时间处理函数,非常好用。 dateRange = pd.date_range(startTime,endTime,freq='MS')#以月分割 num = dateRange.size
#定义文件字典 fplist = {} for index,date in enumerate(dateRange): if index == num-1: break
#开始时间 strSDate = str(dateRange[index])
#结束时间 strEDate = str(dateRange[index+1])
#自动命名文件名 path = strSDate[:10] + '.txt' fp = open(path,'w+') fplist[strSDate] = fp
''' for (key,fp) in fplist.items(): fp.close() '''
先写到这里,困得不行,主要的思路已经在上面,后续再补充,深感抱歉!