我有一個具有以下列級別的資料框:

我想將 DATE 級別分組到相應的 iso 周數,并且輸出等于:

我嘗試了以下方法:
df = df.groupby(
lambda d: d.isocalendar().week,
level='DATE', axis='columns'
).sum()
df.columns.rename('WK', inplace=True)
結果是:

這是我想要的一部分,但我想保留 MultiIndex 列的其他級別(在本例中為 YEAR 和 CAT)。其中 Year 是整數,CAT 可以是字串或分類。
uj5u.com熱心網友回復:
您可以先重命名級別DATE數周,然后sum按所有 4 個級別匯總MultiIndex in columns:
df = (df.rename(columns=lambda d: d.isocalendar().week, level='DATE')
.groupby(level=[0,1,2,3], axis=1)
.sum())
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/493217.html
下一篇:使用集合和資料框計算唯一單詞
