Python 在不计算新偏移量的情况下对时间序列重新采样

Python 在不计算新偏移量的情况下对时间序列重新采样,python,pandas,Python,Pandas,我正在读取仅包含可用时间的timeseries数据。这导致序列没有缺失值,但索引间隔不均匀。我想把它转换成一个系列,它有一个等间距的索引,其中缺少值。因为我事先不知道间距是多少,所以我现在使用一个函数,比如 min_dt = np.diff(series.index.values).min() new_spacing = pandas.DateOffset(days=min_dt.days, seconds=min_dt.seconds,

我正在读取仅包含可用时间的timeseries数据。这导致序列没有缺失值,但索引间隔不均匀。我想把它转换成一个
系列
,它有一个等间距的索引,其中缺少值。因为我事先不知道间距是多少,所以我现在使用一个函数,比如

min_dt      = np.diff(series.index.values).min()
new_spacing = pandas.DateOffset(days=min_dt.days, seconds=min_dt.seconds,
                                microseconds=min_dt.microseconds)
series      = series.asfreq(new_spacing)
计算间距应该是多少(请注意,这使用的是Pandas 0.7.3-0.8测试版代码看起来略有不同,因为我必须使用series.index.to_pydatetime()来获得Numpy 1.6的正确行为)


使用pandas库是否有更简单的方法来执行此操作?

如果您想在没有数据的地方使用NaN,可以使用datetools中的
Minute()
(从pandas 0.7.x开始)


这应该提供一个间隔均匀的时间序列,在没有数据的情况下,以NaN作为序列值,相差1分钟

正如您所说,这将导致条目之间的间隔为一分钟。我试图在它们均匀分布的地方得到它,间距等于条目之间的最小间距(即数据的“实际”频率是多少-每24小时或每12小时,等等)。对不起,误解了这个问题。在这种情况下,我不确定是否有比你现有的更简单的方法。它有什么问题?严格地说,没有什么“错误”,但随着我对pandas库的了解,我希望避免重新实现我不知道的内置函数。此外,必须将索引的显式值与NumPy一起使用,这在pandas 0.8.0 beta版中导致了一些问题,该版本使用NumPy datetime类型,其中日期时间从pandas索引中看起来很好,但查看底层NumPy数组会给出奇怪的值和错误的计算。
from pandas.core.datetools import day, Minute
tseries.asfreq(Minute())