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

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

如何替換 Pandas 中的 Panel 并將其導出到 excel

如何替換 Pandas 中的 Panel 并將其導出到 excel

MMMHUHU 2023-06-06 16:28:50
我有這個數據集,我想將它作為 excel 文件(如圖所示)導出為兩張表('Fabrication' 和 'REACTOR')列標題應該是 'Waste_ads (tons)' 等等。行索引 (-5, -4, -3, - 2...5)data = {'Fabrication': {'Waste_ads (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Uox_spent (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Depu (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 42752.30175388285, -1.0: 8083.238467166332, 0.0: 8083.238467166332, 1.0: 8083.238467166332, 2.0: 8083.238467166332, 3.0: 8083.238467166332, 4.0: 8083.238467166332, 5.0: 8083.238467166332}, 'U (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Uox2_spent (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Uox2 (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Pu (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Waste_mox (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -1.0: 0.0, 0.0: 0.0, 1.0: 0.0, 2.0: 0.0, 3.0: 0.0, 4.0: 0.0, 5.0: 0.0}, 'Waste_uox2 (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0,_ads (tons)': {-5.0: 0.0, -4.0: 0.0, -3.0: 0.0, -2.0: 0.0, -我在今年更新 Python 之前使用了 Pandas 的 Panel,但我不能再使用它了。我的嘗試變得太復雜了,我需要一個更好的方法。感謝您的幫助黨衛軍:
查看完整描述

1 回答

?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

這適用于data您上面提供的;data是一個有兩個鍵('Fabrication' 和 'REACTOR')的字典。每個值都可以轉換為數據框。如果您需要在最終輸出中使用“Fabrication”和“REACTOR”,您可以修改以下示例。


import pandas as pd

dfs = (pd.DataFrame(d) for d in data.values())


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

print(df.shape)


(11, 34)

更新


如果您需要保留工作表名稱,您可以這樣做。很抱歉提出兩個選擇,但我不確定預期的結果。


df = list()


for key, value in data.items():

    t = pd.DataFrame(value)

    t['sheetname'] = key

    df.append(t)

    

df = pd.concat(df)

print(df.iloc[0:5, 0:4])


      Waste_ads (tons)  Uox_spent (tons)   Depu (tons)  U (tons)

-5.0               0.0               0.0      0.000000       0.0

-4.0               0.0               0.0      0.000000       0.0

-3.0               0.0               0.0      0.000000       0.0

-2.0               0.0               0.0  42752.301754       0.0

-1.0               0.0               0.0   8083.238467       0.0


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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