python pandas 对时间序列文件处理的实例


Posted in Python onJune 22, 2018

如下所示:

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 对时间序列文件处理的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python设计模式之单例模式实例
Apr 26 Python
Python三种遍历文件目录的方法实例代码
Jan 19 Python
Python之dict(或对象)与json之间的互相转化实例
Jun 05 Python
详解Python Matplot中文显示完美解决方案
Mar 07 Python
python针对mysql数据库的连接、查询、更新、删除操作示例
Sep 11 Python
python返回数组的索引实例
Nov 28 Python
python将图片转base64,实现前端显示
Jan 09 Python
python检查目录文件权限并修改目录文件权限的操作
Mar 11 Python
python 比较字典value的最大值的几种方法
Apr 17 Python
Python filter()及reduce()函数使用方法解析
Sep 05 Python
linux mint中搜狗输入法导致pycharm卡死的问题
Oct 28 Python
Pycharm如何自动生成头文件注释
Nov 14 Python
python使用turtle绘制分形树
Jun 22 #Python
python递归函数绘制分形树的方法
Jun 22 #Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 #Python
Python使用pandas处理CSV文件的实例讲解
Jun 22 #Python
python处理csv中的空值方法
Jun 22 #Python
Python实现base64编码的图片保存到本地功能示例
Jun 22 #Python
关于python2 csv写入空白行的问题
Jun 22 #Python
You might like
ThinkPHP中实例Model方法的区别说明
2010/08/21 PHP
php设计模式  Command(命令模式)
2011/06/17 PHP
PHP IF ELSE简化/三元一次式的使用
2011/08/22 PHP
PHP判断表单复选框选中状态完整例子
2014/06/24 PHP
PHP传参之传值与传址的区别
2015/04/24 PHP
给PHP开发者的编程指南 第一部分降低复杂程度
2016/01/18 PHP
分享php多功能图片处理类
2016/05/15 PHP
JavaScript和JQuery实用代码片段(一)
2010/04/07 Javascript
js+html5实现canvas绘制椭圆形图案的方法
2016/05/21 Javascript
Javascript中关于Array.filter()的妙用详解
2016/12/04 Javascript
Vue.js系列之vue-router(上)(3)
2017/01/03 Javascript
vuejs指令详解
2017/02/07 Javascript
jquery-ui 进度条功能示例【测试可用】
2019/07/25 jQuery
js中addEventListener()与removeEventListener()用法案例分析
2020/03/02 Javascript
vue + node如何通过一个Txt文件批量生成MP3并压缩成Zip
2020/06/02 Javascript
Python中urllib2模块的8个使用细节分享
2015/01/01 Python
Eclipse中Python开发环境搭建简单教程
2016/03/23 Python
Python随机读取文件实现实例
2017/05/25 Python
Python实现一个服务器监听多个客户端请求
2018/04/12 Python
Python实现的爬取网易动态评论操作示例
2018/06/06 Python
浅谈Python里面小数点精度的控制
2018/07/16 Python
python leetcode 字符串相乘实例详解
2018/09/03 Python
Python 中包/模块的 `import` 操作代码
2019/04/22 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
2019/08/05 Python
python中struct模块之字节型数据的处理方法
2019/08/27 Python
django实现支付宝支付实例讲解
2019/10/17 Python
Python离线安装各种库及pip的方法
2020/11/28 Python
Stuart Weitzman欧盟:美国奢华鞋履品牌
2017/05/24 全球购物
定制iPhone和Macbook保护壳:Slick Case
2018/11/21 全球购物
贝佳斯官方网站:Borghese
2020/05/08 全球购物
精神文明建设先进工作者事迹材料
2014/05/02 职场文书
学习张林森心得体会
2014/09/10 职场文书
民主评议党员登记表自我评价
2014/10/20 职场文书
感谢师恩主题班会
2015/08/17 职场文书
担保公司2015年终工作总结
2015/10/14 职场文书
2016年12月份红领巾广播稿
2015/12/21 职场文书