扣丁学堂Python培训简述pandas把数据写入txt文件每行固定写入一定数量的值方法

本篇文章扣丁学堂Python培训小编给小伙伴们分享一篇pandas 把数据写入txt文件每行固定写入一定数量的值方法,文中有代码列出供小伙伴们参考,感兴趣的小伙伴就随小编来了解一下吧,希望对大家有所帮助。

扣丁学堂Python培训简述pandas把数据写入txt文件每行固定写入一定数量的值方法_第1张图片

我们遇到的情况是:把数据按一定的时间段提出。比如提出每天6:00-8:00的每个数据,可以这样做:

# -*-coding: utf-8 -*-

import pandas as pd

import datetime

#读取csv文件

df=pd.read_csv('A_2+20+DoW+VC.csv')

#求'ave_time'这一列的平均值

aveTime=df['ave_time'].mean()

#把ave_time这列的缺失值进进行填充,填充的方法是按这一列的平均值进行填充

df2=df.fillna(aveTime)

# 把处理过的这一列的数据取出来

col=df2.iloc[:,2]

#因为col带有index值和values值,真正需要的值就是values,取出来的值是Series的类型

arrs=col.values

#取出df2的时间序列的那一列

col.index=df2.iloc[:,1]

#把index处理为datetime格式

col.index=pd.to_datetime(col.index,unit='ns')

#把col分为以天为单位的时间序列,目的是计算这个列有多少天

dcol=col.resample('D').mean()

#n就是多少天

n=dcol.count()

#创建时间序列,目的是把每天的6::0-8:00 | 8:00-10:00 | 15::00-17:00 |17:00-19:00|的行车平均时间取出来

f=open('3.txt','w+')

p=pd.date_range('19/7/2016 6:20',periods=n)

for i in p:

j=i+datetime.timedelta(minutes=100)

values=col[i:j].values

count=0

for temp in values:

  count+=1

  print >> f,temp,

  if(count%6==0):

  print >> f

f.close()

想要了解更多关于Python和人工智能方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Python开发环境搭建视频,Python培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的Python视频教程定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。

你可能感兴趣的:(扣丁学堂Python培训简述pandas把数据写入txt文件每行固定写入一定数量的值方法)