搜尋

首頁  >  問答  >  主體

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部分,大概逻辑有了,但是不知道怎么用代码表达。请大神帮忙提一点建议,谢谢!

迷茫迷茫2899 天前1045

全部回覆(2)我來回復

  • 怪我咯

    怪我咯2017-04-18 10:18:45

    使用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)

    回覆
    0
  • 阿神

    阿神2017-04-18 10:18:45

    你說timeseries,是用pandas麼?
    如果是pandas,其實還蠻簡單的。假設datefrmae的名字是df
    首先確保Date那列轉換為DatetimeIndex,這個可以用df['newdate']=pd.DatetimeIndex(df['date'])完成
    然後就是篩選了df[df['newdate' ].dt.month==9]就能篩選出所有9月的資料了,

    回覆
    0
  • 取消回覆