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

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

沿一列從長到寬重塑 DataFrame

沿一列從長到寬重塑 DataFrame

慕蓋茨4494581 2021-12-17 14:40:51
我正在尋找一種將下面的表 A 顯示重新配置為表 B 的方法。表一:type   x1  x2  x3  A      4   6   9  A      7   4   1  A      9   6   2   B      1   3   8  B      2   7   9轉化為表B:type   x1  x2  x3  x1'  x2'  x3'  x1'' x2'' x3''  A      4    6   9   7    4   1    9     6   2  B      1    3   8   2    7   9   NA     NA  NA真正的表 A 超過 150000 行和 36 列。具有 2100 個獨特的“類型”值。
查看完整描述

1 回答

?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

您可以適當地設置索引,然后unstack:


df


  type  x1  x2  x3

0    A   4   6   9

1    A   7   4   1

2    A   9   6   2

3    B   1   3   8

4    B   2   7   9


res = (df.set_index(['type', df.groupby('type').cumcount()])

         .unstack()

         .sort_index(level=-1, axis=1))


res.columns = res.columns.map(lambda x: x[0] + "'" * int(x[1]))    

res

       x1   x2   x3  x1'  x2'  x3'  x1''  x2''  x3''

type                                                

A     4.0  6.0  9.0  7.0  4.0  1.0   9.0   6.0   2.0

B     1.0  3.0  8.0  2.0  7.0  9.0   NaN   NaN   NaN


查看完整回答
反對 回復 2021-12-17
  • 1 回答
  • 0 關注
  • 152 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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