考慮下面的代碼:如何重新編制通過摺疊DataFrame創建的系列?
sfix = sub['fix'] # a pandas.Panel
(sfix.minor_xs('tstop') - sfix.minor_xs('tstart')) # slicey slicey!
輸出:
<class 'pandas.core.frame.DataFrame'>
Int64Index: 804 entries, 0 to 803
Data columns (total 8 columns):
0 573 non-null values
1 675 non-null values
2 804 non-null values
3 715 non-null values
4 578 non-null values
5 568 non-null values
6 664 non-null values
7 599 non-null values
dtypes: float64(8)
該輸出對應於爲每個包含在Panel對象的8個DataFrames的tstop
和tstart
列之間的差異。
這些列中都含有相同類型的數據,我想他們堆到一個單一系列,ERGO:
s = pd.concat([df[i] for i in df])
這是一個良好的開端,但現在我所有的指標是重複8時間:
>>> s.ix[0]
0 98
0 184
0 178
0 188
0 176
0 234
0 128
0 82
dtype: float64
從這裏,我不能完全弄清楚如何重新索引我的系列使得指標去從0到len(s)
。我試過以下,無濟於事:
s.reindex(copy=True)
s.reindex(index=xrange(len(s)), copy=True)
我錯過了什麼?
謝謝!這似乎正是我想要的。只是爲了加倍確定:這是否保留了數據的順序? – blz 2013-03-25 19:51:31
我相信它(這項工作) - pd.concat([pd.DataFrame({0:[0]}),pd.DataFrame({0:[1]})],ignore_index = True) – user1827356 2013-03-25 20:18:31