Python 利用pandas计算不规则时间序列的日平均值

Python 利用pandas计算不规则时间序列的日平均值,python,csv,pandas,timestamp,Python,Csv,Pandas,Timestamp,我试图从csv文件中的不规则时间序列中获取每日平均值 csv文件中的数据从2013年9月20日13:00开始,一直运行到2014年1月14日10:57: Time Values 20/09/2013 13:00 5.133540 20/09/2013 13:01 5.144993 20/09/2013 13:02 5.158208 20/09/2013 13:03 5.170542 20/09/2013

我试图从csv文件中的不规则时间序列中获取每日平均值

csv文件中的数据从2013年9月20日13:00开始,一直运行到2014年1月14日10:57:

Time                    Values
20/09/2013 13:00        5.133540
20/09/2013 13:01        5.144993
20/09/2013 13:02        5.158208
20/09/2013 13:03        5.170542
20/09/2013 13:04        5.167899    
20/09/2013 13:25        5.168780
20/09/2013 13:26        5.179351
...
我使用以下方法导入它们:

import pandas as pd
data = pd.read_csv('<file name>', parse_dates={'Timestamp':'Time']},index_col='Timestamp')
然后我做了

dataDailyAv = data.resample('D', how = 'mean')
这导致

                           Values
Timestamp                          
2013-09-20 13:00:00        5.133540
2013-09-20 13:01:00        5.144993
2013-09-20 13:02:00        5.158208
2013-09-20 13:03:00        5.170542
2013-09-20 13:04:00        5.167899
2013-09-20 13:25:00        5.168780
2013-09-20 13:26:00        5.179351
...
                  Values
Timestamp                 
2013-01-10        8.623744
2013-01-11             NaN
2013-01-12             NaN
2013-01-13             NaN
2013-01-14             NaN
...
换言之,结果包含原始数据中未出现的日期,其中一些日期(例如2013年1月10日)甚至出现了一个值

你知道哪里出了问题吗

谢谢


编辑:显然,日期解析出现了问题:2013年10月1日被解释为2013年1月10日,而不是2013年10月1日。这可以通过在csv文件中编辑日期格式来解决,但是有没有办法在read_csv中指定日期格式?

您想要的
dayfirst=True
,中列出的许多调整之一。

看起来让人担忧的是,尽管您的时间序列从2013年9月开始,但您会从2013年1月获得数据。您的原始数据有问题吗?也许是一些不规则的东西,你到目前为止没有观察到,因为文件太大了?不幸的是,
resample
的文档有点薄()。。。