温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python中怎么使用pandas处理时间序列文件

发布时间:2021-06-15 16:04:14 来源:亿速云 阅读:232 作者:Leah 栏目:开发技术

这篇文章将为大家详细讲解有关python中怎么使用pandas处理时间序列文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

如下所示:

import pandas as pd from numpy import * import matplotlib.pylab as plt import copy def read(filename):  dat=pd.read_csv(filename,iterator=True)  loop = True  chunkSize = 1000000  R=[]  while loop:   try:    data = dat.get_chunk(chunkSize)    data=data.loc[:,'B':'C'] # 切片    data=data[data.B==855]  #条件选择    data['C']=pd.to_datetime(data['C']) # 转换成时间格式    data=data.set_index(['C'])    # 设置索引    data.loc[:,'D']=array([1]*len(data)) #增加一列    data=data.resample('D').sum() #按天求和    data=data.loc[:,'D'] #截取    data.fillna(0) #填充缺失值    R.append(data)   except StopIteration:    loop = False    print ("Iteration is stopped.")  R.to_csv('855_pay.csv') # 保存 def read2(filename):  reader=pd.read_csv(filename,iterator=True)  loop = True  chunkSize = 100000  chunks = []  while loop:   try:    chunk = reader.get_chunk(chunkSize)    chunks.append(chunk)   except StopIteration:    loop = False    print ("Iteration is stopped.")  df = pd.concat(chunks, ignore_index=True)  return df def read3save(filename):  dat=pd.read_csv(filename)  #data = dat.get_chunk(chunkSize)  data=dat.loc[:,'B':'C'] # 切片  data=data[data.B==855]#条件选择  print(shape(data))  data['C']=pd.to_datetime(data['C']) # 转换成时间格式  data=data.set_index(['C'])# 设置索引  if len(data)==0:   return  data.loc[:,'D']=array([1]*len(data)) #增加一列  data=data.resample('D').sum() #按天求和  data=data.loc[:,'D'] #截取  data.fillna(0) #填充缺失值  data.to_csv('855_pay.csv',mode='a') # 保存 def loadDataSet(fileName, delim='\t'):  fr = open(fileName)  stringArr = [line.strip().split(delim) for line in fr.readlines()]  datArr = [list(map(float,line)) for line in stringArr]  return mat(datArr) def getShopData():  fr = open('shopInfo.txt')  shopID = [line.strip().split('\n') for line in fr.readlines()]  # datArr = [list(map(float,line))for line in stringArr]  for i in range(1,9):   name="user_pay.001.00%d"%i   dat=pd.read_csv(name)   #data = dat.get_chunk(chunkSize)   data=dat.loc[:,'B':'C'] # 切片   for factor in shopID:    data=data[data.B==int(str(factor[0]))]#条件选择    print(shape(data))    if len(data)==0: continue    data['C']=pd.to_datetime(data['C']) # 转换成时间格式    data=data.set_index(['C'])# 设置索引    data.loc[:,'D']=array([1]*len(data)) #增加一列    data=data.resample('D').sum() #按天求和    data=data.loc[:,'D'] #截取    data.fillna(0) #填充缺失值    s=str(factor[0])    savename='D:\python\data\%s_pay.csv'%s    data.to_csv(savename,mode='a') # 保存    del dat  print("over") def tset(filename):  dat=pd.read_csv(filename)  #data = dat.get_chunk(chunkSize)  data=dat.loc[:,'B':'C'] # 切片  data=data[data.B==855]#条件选择  print(shape(data))  data['C']=pd.to_datetime(data['C']) # 转换成时间格式  data=data.set_index(['C'])# 设置索引  if len(data)==0:   return  data.loc[:,'D']=array([1]*len(data)) #增加一列  data=data.resample('D').sum() #按天求和  data=data.loc[:,'D'] #截取  data.fillna(0) #填充缺失值  #data.to_csv('855_pay.csv',mode='a') # 保存  s='my'  savename='D:\python\data\%s_pay.csv'%s  data.to_csv(savename,mode='a') # 保存    def getShopData2(filename):   import csv  # fr = open('shopInfo.txt')   # shopID = [line.strip().split('\n') for line in fr.readlines()]  # datArr = [list(map(float,line))for line in stringArr]  #for i in range(1,9):  #name="user_pay.001.00%d"%i   dat=pd.read_csv(filename)   #data = dat.get_chunk(chunkSize)   data=dat.loc[:,'B':'C'] # 切片   data['C']=pd.to_datetime(data['C']) # 转换成时间格式   data=data.set_index(['C'])# 设置索引   data.loc[:,'D']=array([1]*len(data)) #增加一列   for i in range(1,2001):    d=copy.copy(data)    d=d[data.B==i]#条件选择    #print(shape(d))    print(i)    if len(d)==0: continue    d=d.resample('D').sum() #按天求和    d=d.loc[:,'D'] #截取    d.fillna(0) #填充缺失值    s=str(i)    #print(s)    savename='D:\python\data2\%s_pay.csv'%s    c=open(savename,'a')    writer=csv.writer(c)    writer.writerow(['C','D'])    c.close()    d.to_csv(savename,mode='a') # 保存    # del dat    print("over") def formatData():   #fr = open('shopInfo.txt')   #shopID = [line.strip().split('\n') for line in fr.readlines()]  # datArr = [list(map(float,line))for line in stringArr]   #data = dat.get_chunk(chunkSize)   for i in range(1,2001):    s=str(i)    print(s)    name='D:\python\data2\%s_pay.csv'%s    dat=pd.read_csv(name)    data['C']=pd.to_datetime(data['C']) # 转换成时间格式    data=data.set_index(['C'])# 设置索引    data=data.resample('D').sum() #按天求和    data.fillna(0) #填充缺失值    savename='D:\python\data3\%s_pay.csv'%s    data.to_csv(savename,mode='w') # 保存    del dat    print("over")

关于python中怎么使用pandas处理时间序列文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI