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爬虫之抓取百度贴吧并存储到本地txt文件改进版
Nov 06 Python
Python中字典的基本知识初步介绍
May 21 Python
在Python中操作文件之truncate()方法的使用教程
May 25 Python
Linux系统上Nginx+Python的web.py与Django框架环境
Dec 25 Python
如何使用python爬取csdn博客访问量
Feb 14 Python
python中Switch/Case实现的示例代码
Nov 09 Python
python实现在IDLE中输入多行的方法
Apr 19 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 Python
Python过滤txt文件内重复内容的方法
Oct 21 Python
python调用虹软2.0第三版的具体使用
Feb 22 Python
python 串口读取+存储+输出处理实例
Dec 26 Python
使用python计算三角形的斜边例子
Apr 15 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
PHP静态成员变量
2017/02/14 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
PHP实现文件上传操作和封装
2020/03/04 PHP
javascript 清空form表单中某种元素的值
2009/12/26 Javascript
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
JavaScript prototype属性深入介绍
2012/11/27 Javascript
js用闭包遍历树状数组的方法
2014/03/19 Javascript
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
js动态修改表格行colspan列跨度的方法
2015/03/30 Javascript
浅谈javascript中onbeforeunload与onunload事件
2015/12/10 Javascript
VUE JS 使用组件实现双向绑定的示例代码
2017/01/10 Javascript
详解在Angular项目中添加插件ng-bootstrap
2017/07/04 Javascript
javascript基础进阶_深入剖析执行环境及作用域链
2017/09/05 Javascript
node+express+ejs使用模版引擎做的一个示例demo
2017/09/18 Javascript
使用jQuery给Table动态增加行、清空table的方法
2018/09/05 jQuery
java遇到微信小程序 "支付验证签名失败" 问题解决
2019/12/22 Javascript
Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法
2015/05/22 Python
详解Python中 __get__和__getattr__和__getattribute__的区别
2016/06/16 Python
python 检查文件mime类型的方法
2018/12/08 Python
python 监听salt job状态,并任务数据推送到redis中的方法
2019/01/14 Python
Python实现多态、协议和鸭子类型的代码详解
2019/05/05 Python
python 判断文件还是文件夹的简单实例
2019/06/10 Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
2020/12/01 Python
家得宝官网:The Home Depot(全球最大的家居装饰专业零售商)
2018/12/17 全球购物
高中语文课后反思
2014/04/27 职场文书
安全月活动总结
2014/05/05 职场文书
离职保密承诺书
2014/05/28 职场文书
幼儿园安全责任书范本
2014/07/24 职场文书
奥巴马上海演讲稿
2014/09/10 职场文书
镇政府副镇长群众路线专题民主生活会对照检查材料
2014/09/19 职场文书
党的群众路线批评与自我批评发言稿
2014/10/16 职场文书
基层党支部整改方案
2014/10/25 职场文书
风雨哈佛路观后感
2015/06/03 职场文书
Redis性能监控的实现
2021/07/09 Redis
JavaScript阻止事件冒泡的方法
2021/12/06 Javascript
springboot创建的web项目整合Quartz框架的项目实践
2022/06/21 Java/Android