python 读取csv文件中某一段月份中的数据?

这是问题:Find out how much time and over how many separate days did R.Lennon work on administering the Jira Server between August and September.

csv里是这样的图片描述

我才开始学习timeseries部分,大概逻辑有了,但是不知道怎么用代码表达。请大神帮忙提一点建议,谢谢!

阅读 6k
2 个回答

使用re.split拆分Date字段

import csv,re

with open('xxx.csv','rb') as rf:
    reader = csv.reader(rf)
    with open('xxx_new.csv','wb') as wf:
        writer = csv.writer(wf)
        headers = reader.next()
        writer.writerow(headers)
        for row in reader:
            t = re.split('\W+',row[1])  
            # row[1]为Date字段,被拆为['1', '11', '2016', '14', '17']
            if int(t[1]) == 11:  # 假设你想要11月数据
                writer.writerow(row)

你说timeseries,是用pandas么?
如果是pandas,其实还是蛮简单的。假设datefrmae的名字是df
首先确保Date那列转换为DatetimeIndex,这个可以用df['newdate']=pd.DatetimeIndex(df['date'])完成
然后就是筛选了df[df['newdate'].dt.month==9]就能筛选出所有9月的数据了,

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题