[英]How to combine multiple rows into one column with pandas?
我有一個 pandas dataframe,內容如下(X 代表一些值)
個人身份證件 | 時間點 | label |
---|---|---|
1個 | 1個 | X |
. | . | . |
1個 | 12 | X |
2個 | 400 | X |
. | . | . |
2個 | 411 | X |
基本上,對於每個人,我都有 12 個連續時間條目的標簽(並不總是從 1 到 12)。 我要的是下面的表格
個人身份證件 | label(第一時間點) | label(第二個時間點) | ... | label(第十二個時間點) |
---|---|---|---|---|
1個 | X | X | ... | X |
2個 | X | X | ... | X |
我怎樣才能做到這一點? 由於我想忽略時間點數字,只希望十二個標簽彼此相鄰,因此 pivot 表似乎無法完成這項工作。
使用GroupBy.cumcount
按personal id
進行計數器,然后使用DataFrame.pivot
:
df = df.assign(g = df.groupby('personal id').cumcount()).pivot('personal id','g','label')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.