重采样不';我无法将我的索引识别为datetime

重采样不';我无法将我的索引识别为datetime,datetime,pandas,Datetime,Pandas,我使用datetime.date字段作为索引,但出于某种原因,它似乎不同意它是datetime 首先,我将验证该字段确实是datetime.date格式: In [1]: df[date][0] Out [1]: datetime.date(2010, 1, 1) 现在我尝试按周重新采样并绘制平均值: In [2]: df.set_index(date)[var].resample('W', how='mean').plot() /python2.7/site-packages/panda

我使用datetime.date字段作为索引,但出于某种原因,它似乎不同意它是datetime

首先,我将验证该字段确实是datetime.date格式:

In [1]: df[date][0]

Out [1]: datetime.date(2010, 1, 1)
现在我尝试按周重新采样并绘制平均值:

In [2]: df.set_index(date)[var].resample('W', how='mean').plot()

/python2.7/site-packages/pandas/core/generic.pyc in resample(self, rule, how, axis, fill_method, closed, label, convention, kind, loffset, limit, base)
   2878                               fill_method=fill_method,    convention=convention,
   2879                               limit=limit, base=base)
-> 2880         return sampler.resample(self).__finalize__(self)
   2881 
   2882     def first(self, offset):

/python2.7/site-packages/pandas/tseries/resample.pyc in resample(self, obj)
    100             return self.obj
    101         else:  # pragma: no cover
--> 102             raise TypeError('Only valid with DatetimeIndex or PeriodIndex')
    103 
    104         rs_axis = rs._get_axis(self.axis)

TypeError: Only valid with DatetimeIndex or PeriodIndex

我不能提供样本数据,因为它是专有的。有什么想法吗?

我想您应该先将日期列转换为时间序列。 尝试:


熊猫开发人员告诉我,熊猫索引中的
datetime
对象效率低下,应尽可能避免使用

只需检查一下
df1=df.set_index(date)df1[var].resample('W',how='mean').plot()
是否有效?您能否尝试显式转换为日期时间索引,使您的代码看起来像:
df.set_index(pd.DatetimeIndex(date))[var]。重新采样('W',how='mean').plot()
导入数据时,我在代码前面执行了这一操作。让我试着再转换一次,看看这是否会清除它。给我几分钟。
df['date'] = pd.to_datetime(df.date)
df.set_index('date')[var]....