亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 panda 數據框中的垂直值轉換為水平方向

將 panda 數據框中的垂直值轉換為水平方向

慕俠2389804 2023-10-18 22:03:47
我目前有一個看起來像這樣的數據框DATE        ID      CHANGE05-05-2020   333333      1005-05-2020   333334       205-05-2020   333335       805-06-2020   333333      -205-06-2020   333334       405-06-2020   333335       5我希望能夠按日期水平轉換該數據幀并按 ID 分隔為  DATE        ID      CHANGE      ID      CHANGE       ID      CHANGE05-05-2020   333333      10      333334       2       333335       8       05-06-2020   333333      -2      333334       4       333335       5  或者 DATE     333333_CHANGE     333334_CHANGE     333335_CHANGE05-05-2020       10                 2                 805-06-2020       -2                 4                 5    我認為你必須做某種事情df.groupby(),或者pd.concat()盡管閱讀它們的文檔也讓我感到困惑。
查看完整描述

1 回答

?
holdtom

TA貢獻1805條經驗 獲得超10個贊

如果可能,output#2 更好,因為重復的列名可能會導致 output#1 中出現許多不同的問題。


對于輸出#2,使用.unstack()然后對多索引列進行一些清理以獲得更好的格式:


df = df.set_index(['DATE', 'ID']).unstack(1).add_suffix('_CHANGE')

df.columns = df.columns.droplevel()

df = df.reset_index()

df

Out[1]: 

ID        DATE  333333_CHANGE  333334_CHANGE  333335_CHANGE

0   05-05-2020             10              2              8

1   05-06-2020             -2              4              5


查看完整回答
反對 回復 2023-10-18
  • 1 回答
  • 0 關注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號