【发布时间】:2021-06-05 18:08:25
【问题描述】:
我有一个示例数据集,其中包含不同年份的 id 和成本,如下所示:
| Id | 2015-04 | 2015-05 | 2015-06 | 2015-07 | 2016-04 | 2016-05 | 2016-06 | 2016-07 | 2017-04 | 2017-05 | 2017-06 | 2017-07 | 2018-04 | 2018-05 | 2018-06 | 2018-07 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 10 | 58500 | 58500 | 58300 | 57800 | 57500 | 57700 | 57800 | 57800 | 57800 | 57900 | 58400 | 59000 | 59500 | 59500 | 59000 | 58500 |
| 11 | 104600 | 104600 | 105700 | 106100 | 106300 | 107300 | 108000 | 107600 | 107800 | 108300 | 109200 | 109600 | 109300 | 108700 | 109000 | 110700 |
| 12 | 104900 | 106700 | 107900 | 107500 | 106100 | 105200 | 105700 | 106400 | 106700 | 107100 | 107200 | 107100 | 107500 | 108300 | 109200 | 110500 |
| 13 | 50500 | 49600 | 48900 | 48400 | 48100 | 48000 | 47700 | 47500 | 47400 | 47600 | 47800 | 47800 | 47600 | 47600 | 48100 | 48400 |
| 14 | 49800 | 49900 | 50300 | 50800 | 51100 | 51200 | 51200 | 51400 | 51600 | 51900 | 52400 | 52600 | 52300 | 51800 | 51100 | 50900 |
如何在 Python 中创建一个函数来查找属于其各自 id 的每年的平均成本?我希望函数在开始和结束年份方面是动态的,以便如果新数据来自不同年份,代码将相应地计算更改。例如,如果 2019 年有新数据,则结束日期将自动视为 2019 年而不是 2018 年,并分别计算其中位数。
根据上面给出的当前数据样本,结果应该如下所示:
| Id | 2015 | 2016 | 2017 | 2018 |
|---|---|---|---|---|
| 10 | 58400 | 57750 | 58150 | 59250 |
| 11 | 105150 | 107450 | 108750 | 109150 |
| 12 | 107100 | 105900 | 107100 | 108750 |
| 13 | 49250 | 47850 | 47700 | 47850 |
| 14 | 50100 | 51200 | 52150 | 51450 |
【问题讨论】:
标签: python pandas function median