[英]Python/Pandas: Loop to append Excel files ONLY if each Excel file contains certain values
[英]Write multiple Excel files for each value of certain column Python Pandas
考慮以下數據幀:
data = {'Col_A': [3, 2, 1, 0], 'Col_B': ['a', 'b', 'a', 'b']}
df = pd.DataFrame.from_dict(data)
我可以創建一個數據框架a並將其寫入Excel,如下所示:
a = df[df.Col_B == 'a']
a
a.to_excel(excel_writer = 'F:\Desktop\output.xlsx', index = False)
我正在尋找一種寫B列每個值的Excel文件的方法。實際上,Col_B有數百個值。 有沒有辦法解決這個問題?
任何幫助是極大的贊賞!
問候,
M.
如果需要為每個組分別按groupby
對象單獨的excel文件循環:
for i, a in df.groupby('Col_B'):
a.to_excel(f'F:\Desktop\output_{i}.xlsx', index = False)
如果需要在一個exel文件中為每個組單獨的工作表名稱,請使用ExcelWriter
:
with pd.ExcelWriter('output.xlsx') as writer:
for i, a in df.groupby('Col_B'):
a.to_excel(writer, sheet_name=i, index = False)
你可以做:
for i in df.Col_B.unique():
df[df.Col_B.eq(i)].to_excel('F:\Desktop\output'+i+'.xlsx',index=False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.