【发布时间】:2021-10-09 15:02:55
【问题描述】:
在某些背景下,我一直在尝试为数据集中的每个唯一名称取每个财政周的数据集的平均值。我从看起来像这样的数据集开始:
| pad | fiscal_week | value |
|---|---|---|
| Verace | 5 | 23 |
| Jersey | 5 | 20 |
| Verace | 5 | 20 |
| Verace | 5 | 22 |
| Verace | 6 | 30 |
| Colorado | 4 | 15 |
我目前拥有的:
unique_week = df['fiscal_week'].unique()
unique_week = sorted(unique_week)
newCols = pd.DataFrame()
for week_number in unique_week:
unique_id = df['pad'].unique()
turbine_reg = df[df['fiscal_week'] == week_number]
newColname = 'FW' + str(week_number)
for turbine_name in unique_id:
turbine_name_reg = turbine_reg[turbine_reg['pad'] == turbine_name]
value_mean = [turbine_name_reg['value'].mean()]
newCols['Turbine'] = turbine_name
newCols[newColname] = direct_mean
我希望最终产品看起来像这样:
| pad | FW1 | FW2 | FW3 |
|---|---|---|---|
| Verace | 22 | 23 | 24 |
| Jersey | 15 | 16 | 20 |
| Colorado | 23 | 25 | 16 |
目前,我只得到循环运行的最后一个唯一垫的结果,而不是保存它为其他垫运行的时间。我知道循环每次都会覆盖自己,但我不确定如何修复它。
有什么想法吗?
【问题讨论】: