首页 > 解决方案 > 在 pandas 中查找 n 个连续行的平均值并添加为同一数据框中的另一列

问题描述

我有一个像这样的数据框。

+-----------------+-------+
|   Time Stamp    | Value |
+-----------------+-------+
| 11/18/2020 6:06 |     2 |
| 11/18/2020 6:06 |    19 |
| 11/18/2020 6:06 |     1 |
| 11/18/2020 6:06 |    21 |
| 11/18/2020 6:06 |     2 |
| 11/18/2020 6:07 |    52 |
| 11/18/2020 6:07 |     0 |
| 11/18/2020 6:08 |    20 |
| 11/18/2020 6:08 |     2 |
| 11/18/2020 6:08 |    20 |
| 11/18/2020 6:08 |     1 |
| 11/18/2020 6:08 |    19 |
| 11/18/2020 6:08 |     1 |
| 11/18/2020 6:09 |    20 |
| 11/18/2020 6:09 |     1 |
+-----------------+-------+

我想向数据框中添加一个新列,其中包含 4 个连续值的平均值(每个重复 4 次),如下所示。

+-----------------+-------+------+
|   Time Stamp    | Value | Avg  |
+-----------------+-------+------+
| 11/18/2020 6:06 |     2 | 10.7 |
| 11/18/2020 6:06 |    19 | 10.7 |
| 11/18/2020 6:06 |     1 | 10.7 |
| 11/18/2020 6:06 |    21 | 10.7 |
| 11/18/2020 6:06 |     2 | 18.5 |
| 11/18/2020 6:07 |    52 | 18.5 |
| 11/18/2020 6:07 |     0 | 18.5 |
| 11/18/2020 6:08 |    20 | 18.5 |
| 11/18/2020 6:08 |     2 | 10.5 |
| 11/18/2020 6:08 |    20 | 10.5 |
| 11/18/2020 6:08 |     1 | 10.5 |
| 11/18/2020 6:08 |    19 | 10.5 |
| 11/18/2020 6:08 |     1 |  7.3 |
| 11/18/2020 6:09 |    20 |  7.3 |
| 11/18/2020 6:09 |     1 |  7.3 |
+-----------------+-------+------+

实现这一目标的最简单方法是什么?

我已经尝试过类似这个链接中的答案。但我不知道如何将平均列添加回同一个数据框。

标签: pythonpandasdataframe

解决方案


推荐阅读