簡體   English   中英

我如何編寫一個函數或循環,將每個唯一值分配到它自己的可訪問數據框中?

[英]How could I write a function or loop that assigns each unique value into its own accessible dataframe?

我正在尋找一種為數據框列中的每個唯一值創建數據框的方法。

我有一個如下表(顯然這是組成數據):

| Staff |  debit  |  credit  | Day      |
| Bob   |  100    |  25      | Monday   |
| Sue   |  15     |  95      | Wednesday|
| Bob   |  125    |  40      | Monday   |
| Bob   |  100    |  2       | Friday   |
| Sue   |  50     |  50      | Tuesday  |
| Bob   |  16     |  80      | Thursday |

我創建了一個數據框字典,用於過濾我希望使用此代碼的方式:

x = dict(tuple(report.gropuby('Staff')))

然后我可以通過以下方式調用每個鍵來打印過濾后的數據幀:

鮑勃 = x['鮑勃']

這看起來像:

| Staff |  debit  |  credit  | Day      |
| Bob   |  100    |  25      | Monday   |
| Bob   |  125    |  40      | Monday   |
| Bob   |  100    |  2       | Friday   |
| Bob   |  16     |  80      | Thursday |

有沒有一種方法可以為字典中的每個鍵循環命名並為此數據框字典中的每個鍵創建一個數據框? 然后我想將每個數據框導出到同一個 Excel 文件的自己的 Excel 工作表(.xls 或 .xlsx)。 有超過 50 名員工,而且每個人都定期更換,因此最好自動執行此操作,而不是每次手動編寫姓名列表。

我想出了一種不同的方法來做我想做的事情,也許它會幫助別人。 我沒有創建該字典然后嘗試將其轉換為 Excel,而是使用以下代碼從原始數據幀中使用 groupby 轉換為 Excel:

 with pd.ExcelWriter('test.xlsx') as writer: 
    for Staff, df in  df.groupby('Staff'): 
        df.to_excel(writer, sheet_name = Staff)

暫無
暫無

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

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