我正在寻找一种无需拆分索引和值列即可将DataFrame转换为时间序列的方法。有任何想法吗?谢谢。

In [20]: import pandas as pd

In [21]: import numpy as np

In [22]: dates = pd.date_range('20130101',periods=6)

In [23]: df = pd.DataFrame(np.random.randn(6,4),index=dates,columns=list('ABCD'))

In [24]: df
Out[24]:
                   A         B         C         D
2013-01-01 -0.119230  1.892838  0.843414 -0.482739
2013-01-02  1.204884 -0.942299 -0.521808  0.446309
2013-01-03  1.899832  0.460871 -1.491727 -0.647614
2013-01-04  1.126043  0.818145  0.159674 -1.490958
2013-01-05  0.113360  0.190421 -0.618656  0.976943
2013-01-06 -0.537863 -0.078802  0.197864 -1.414924

In [25]: pd.Series(df)
Out[25]:
0    A
1    B
2    C
3    D
dtype: object

最佳答案

我知道这对游戏来说很晚,但有几点。

是否将DataFrame视为TimeSeries是索引的类型。在您的情况下,您的索引已经是TimeSeries,因此您可以使用。有关使用pd.timeseries索引可以进行的所有切片的更多信息,请查看http://pandas.pydata.org/pandas-docs/stable/timeseries.html#datetime-indexing

现在,其他人可能会到达这里,因为他们想要创建索引的列'DateTime',在这种情况下,答案很简单

ts = df.set_index('DateTime')

关于python - 如何将pandas DataFrame转换为时间序列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16822996/

10-09 16:54