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

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

如何將一列拆分為多個列名稱更改的列

如何將一列拆分為多個列名稱更改的列

HUX布斯 2022-11-01 15:15:43
我將一個數據框定義為一個“函數”,其中數據框中每一列的名稱不斷變化,因此我無法指定該列的名稱,然后將其拆分為多列。例如,我不能說df ['name']然后將其拆分為許多列。此數據幀的列數和行數不是恒定的。我需要將包含多個項目的任何列拆分為多個組件(列)。例如:這是我擁有的數據框之一:name/one                                                name/three         (192.26949,)                                      (435.54,436.65,87.3,5432) (189.4033245,)                                (45.51,56.612, 54253.543, 54.321) (184.4593252,)                                 (45.58,56.6412,654.876,765.66543) 我想將其轉換為:name/one                 name/three1      name/three2     name/three3       name/three4 192.26949                  435.54          436.65            87.3              5432 189.4033245                45.51           56.612          54253.543          54.321 184.4593252                45.58           56.6412          654.876          765.66543
查看完整描述

1 回答

?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

如果所有數據都是所有行中的元組并且所有列concatDataFrame構造函數和一起使用,則解決方案DataFrame.add_prefix


df = pd.concat([pd.DataFrame(df[c].tolist()).add_prefix(c) for c in df.columns], axis=1)

print (df)

    name/one0  name/three0  name/three1  name/three2  name/three3

0  192.269490       435.54     436.6500       87.300   5432.00000

1  189.403324        45.51      56.6120    54253.543     54.32100

2  184.459325        45.58      56.6412      654.876    765.66543

如果可能的話,字符串 repr 的元組:


import ast


L = [pd.DataFrame([ast.literal_eval(y) for y in df[c]]).add_prefix(c) for c in df.columns]

df = pd.concat(L, axis=1)

print (df)

    name/one0  name/three0  name/three1  name/three2  name/three3

0  192.269490       435.54     436.6500       87.300   5432.00000

1  189.403324        45.51      56.6120    54253.543     54.32100

2  184.459325        45.58      56.6412      654.876    765.66543


查看完整回答
反對 回復 2022-11-01
  • 1 回答
  • 0 關注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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