簡體   English   中英

在 Python 中使用 Pandas 重命名多個工作表中的列 (XLS)

[英]Using Pandas in Python to rename columns across multiple sheets (XLS)

我有一個 excel 文件 (.xls),我在多個工作表中有標題,我想使用 Pandas 重命名然后重新保存文檔。 這就是我目前正在嘗試的:

def read_File():
   file = 'TheFile.xls'
   xls = pd.read_excel(file)
   xls.rename(columns = {'aa': 'A','Aa':'A', 'bb':'B'}, inplace =True)
   xls.to_excel(file, index = False)

我認為這部分工作,但保存的文件只保留了第一個工作表,我如何讓整個工作簿工作?

我不確定我是否遺漏了一些明顯的東西,並且有一種更簡單的方法來實現我想要的東西,任何幫助將不勝感激。

謝謝

根據pd.read_excel方法的 Pandas 文檔,您可以指定sheet_name = None並取回數據sheet_name = None字典(每個工作表一個)。

你可以這樣嘗試:

from pandas import ExcelWriter

def read_File():
    file = "TheFile.xls"
    sheets = pd.read_excel(file, sheet_name=None)
    with ExcelWriter(file) as writer:
        for name, sheet in sheets.items():
            sheet.rename(columns={"aa": "A", "Aa": "A", "bb": "B"}, inplace=True)
            sheet.to_excel(excel_writer=writer, sheet_name=name, index=False)
        writer.save()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM