[英]Python - Iterate through excel column values to split up into separate sheets
我有一個包含不同列的 excel 文件,我想根據唯一的列值(在本例中為月份名稱)將它們分成不同的工作表。因此將創建 12 個工作表,每個月一個。我讓它工作當我在沒有循環的情況下對其進行硬編碼時,但我寧願通過一個列表循環它以節省時間。
我當前在 excel 文件中的 output 文件名稱為“February”,其中包含整個數據集。
有人有想法么? 謝謝!
import xlrd
import xlsxwriter
df = pd.read_excel(r"PATH\data_test.xlsx", index_col = 0)
#writer = pd.ExcelWriter("Test3.xlsx", engine = 'xlsxwriter')
test_list = ['January', 'February']
for i in test_list:
writer = pd.ExcelWriter("Test3.xlsx", engine='xlsxwriter')
df.loc[i]
df.to_excel(writer, sheet_name = i)
print(i)
writer.save()
df的內容:
Month Amount
January 125
January 32
February 12
March 70
April 48
May 98
June 110
July 7
August 124
September 63
October 93
November 6
December 118
像這樣的東西應該工作:
groups = df.groupby("Month")
with pd.ExcelWriter("my_file.xls") as writer:
for (name, df_group) in groups:
df_group.to_excel(writer, sheet_name=name)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.