Python pandas.Timeseries和pandas.Series有什么区别
我的代码在以下断言处中断:Python pandas.Timeseries和pandas.Series有什么区别,python,pandas,Python,Pandas,我的代码在以下断言处中断: assert(type(series_one) == pandas.TimeSeries) 我传递给它的类型似乎是“pandas.core.series.series”,但所述系列的索引是“pandas.tseries.index.DatetimeIndex” 如何解决这个问题?这里有两个令人困惑的地方。首先,pandas.Series有一个索引,它有值。索引可能有不同的类型,如分类索引,多索引,时间数据索引和您的日期时间索引 其次,在断言中,键入check检查整个
assert(type(series_one) == pandas.TimeSeries)
我传递给它的类型似乎是“pandas.core.series.series”,但所述系列的索引是“pandas.tseries.index.DatetimeIndex”
如何解决这个问题?这里有两个令人困惑的地方。首先,
pandas.Series
有一个索引,它有值。索引可能有不同的类型,如分类索引
,多索引
,时间数据索引
和您的日期时间索引
其次,在断言中,键入check检查整个序列,而不是索引。此外,建议使用isinstance
进行类型检查,有关更多信息,请参阅:
assert(isinstance(series_one, pandas.Series))
要检查一个系列,您使用了pandas.TimeSeries
,但该系列已折旧,应替换为pandas.series
:
# creating pandas.TimeSeries
dummy = pd.TimeSeries([1,2,3])
FutureWarning: TimeSeries is deprecated. Please use Series
将自动打印未来警告,指示将来不应使用TimeSeries
总而言之,在你的断言中,不管是整个系列还是系列的索引,你都要仔细考虑你想要检查的内容。如果你想检查一个系列,那么使用
pandas.Series
而不是TimeSeries。你的问题没有什么意义,你问的是确定某个东西是TimeSeries还是系列,然后问为什么索引是datetimeindex,为什么这会令人惊讶?