我想计算两个相关阵列(下面的列表)的许多连续间隔的平均值和标准偏差,其中前两列分别是(比如说)时间和距离。第三,第四和第五是平均时间(中心),平均距离和偏差标准。 (实际上我手工制作了这个清单)。如何在示例中看到每三个连续间隔的平均值和标准偏差(但一般可以超过4乘4,10乘10等等)。
所以,我有类似的长列表,我想计算(可能用PANDAS,NUMPY和/或SCIPY)做这样的循环并创建平均时间,平均距离和偏差标准的数组。因此能够绘制距离与时间的关系,并绘制时间和距离的平均值及其标准偏差(误差,称为西格玛)
1 1 2 4.6 3.29
2 4 5 25.6 8.17
3 9 8 64.6 13.07
4 16 11 121.6 17.96
5 25 14 196.6 22.86
6 36 17 289.6 27.76
7 49 20 400.6 32.66
8 64
9 81
10 100
11 121
12 144
13 169
14 196
15 225
16 256
17 289
18 324
19 361
20 400
21 441
我使用errorbar
绘制了这个,但我的问题是如何为每个间隔执行循环
答案 0 :(得分:1)
您可以使用 numpy 执行此操作。 reshape
可用于将数据分组为块来计算统计数据:
import numpy as np
// data
time = np.arange(1.0,22.0)
distance = time ** 2
// group data into chunks to get stats
meanTime = np.mean(time.reshape(-1,3),axis=1)
meanDistance = np.mean(distance.reshape(-1,3), axis=1)
std = np.std(distance.reshape(-1,3), axis=1)