的列組的列我有一個熊貓數據幀,看起來是這樣的:基於M列熊貓:重複的行放入名單
>>> df
m event
0 3 1
1 1 1
2 1 2
3 1 2
4 2 1
5 2 0
6 3 1
7 2 2
8 3 2
9 3 1
我想組的事件列的值轉換成列表,以便我會得到這樣的:
>>> df
m events
0 3 [1, 1, 2, 1]
1 1 [1, 2, 2]
2 2 [1, 0, 2]
應該有每m的獨特價值一行與屬於所有m事件的對應列表。
我嘗試這樣做:
>>> list(df.groupby('m').event)
[(3, m_id
0 1
6 1
8 2
9 1
Name: event, dtype: int64), (1, m_id
1 1
2 2
3 2
Name: event, dtype: int64), (2, m_id
4 1
5 0
7 2
Name: event, dtype: int64)]
它那種做什麼,我想在這M組後的事件。我可以用一些循環來回顧我想要的數據框,但是我覺得我已經開始了一個不必要的複雜路徑。如果m有數以千計的唯一值,則會變慢。
我可以使用Pandas方法以優雅的方式執行我想要的轉換嗎?
如果事件列可以包含(numpy)數組,以便我可以直接在事件行上進行數學運算(如df[df.m==1].events + 100
),但常規列表也可以。
即使陣列,完美! – PaulMag