1
周的行我有一個熊貓的時間序列:樞軸每日時間序列的大熊貓
days = pd.DatetimeIndex([
'2011-01-01T00:00:00.000000000',
'2011-01-02T00:00:00.000000000',
'2011-01-03T00:00:00.000000000',
'2011-01-04T00:00:00.000000000',
'2011-01-05T00:00:00.000000000',
'2011-01-06T00:00:00.000000000',
'2011-01-07T00:00:00.000000000',
'2011-01-08T00:00:00.000000000',
'2011-01-09T00:00:00.000000000',
'2011-01-11T00:00:00.000000000',
'2011-01-12T00:00:00.000000000',
'2011-01-13T00:00:00.000000000',
'2011-01-14T00:00:00.000000000',
'2011-01-16T00:00:00.000000000',
'2011-01-18T00:00:00.000000000',
'2011-01-19T00:00:00.000000000',
'2011-01-21T00:00:00.000000000',
])
counts = [85, 97, 24, 64, 3, 37, 73, 86, 87, 82, 75, 84, 43, 51, 42, 3, 70]
df = pd.DataFrame(counts,
index=days,
columns=['count'],
)
df['day of the week'] = df.index.dayofweek
它看起來是這樣的:
count day of the week
2011-01-01 85 5
2011-01-02 97 6
2011-01-03 24 0
2011-01-04 64 1
2011-01-05 3 2
2011-01-06 37 3
2011-01-07 73 4
2011-01-08 86 5
2011-01-09 87 6
2011-01-11 82 1
2011-01-12 75 2
2011-01-13 84 3
2011-01-14 43 4
2011-01-16 51 6
2011-01-18 42 1
2011-01-19 3 2
2011-01-21 70 4
注意,有一些日子,缺少這應該充滿零。我想將其轉換爲看起來像日曆,以便行數增加數週,列數是一週中的幾天,而值是該特定日期的計數。所以,最終的結果應該是這樣的:
0 1 2 3 4 5 6
0 0 0 0 0 0 85 97
1 24 64 3 37 73 86 87
2 0 82 75 84 0 0 51
3 0 42 3 0 70 0 0
0周前五天(0-4)有一個零計數。有沒有辦法改變一切,所以第六天是第一天?如果我將這個DF轉換爲一個numpy數組,然後將其平坦化,那麼它將在開始和結束處填充零,但我希望它的長度與原始DF中的行數相同。我打算將一些轉換應用於此透視表。 – slaw
您可以隨時通過傳遞列名來重新排列列。 'new_df [[6,0,1,2,3,4,5]]將把第七列作爲第一列。你是這個意思嗎? – Psidom