以数组的间隔表示的平均值,python中的标准偏差(熊猫)

以数组的间隔表示的平均值,python中的标准偏差(熊猫),python,numpy,pandas,scipy,mean,Python,Numpy,Pandas,Scipy,Mean,我想计算两个相关数组(如下表)的多个连续间隔的平均值和标准偏差,其中前两列分别是(比方说)时间和距离。第三、第四和第五是平均时间(中心)、平均距离和偏差标准。(事实上,这张单子是我亲手写的)。如何在示例中看到每三个连续间隔的平均值和标准偏差(但通常可以超过4乘4、10乘10等等) 所以,我有类似的长列表,我想计算(可能是熊猫、NUMPY和/或SCIPY)这样的东西,做一些循环,创建平均时间、平均距离和偏差标准的数组。因此,能够绘制距离与时间的关系图,并绘制时间和距离的平均值及其标准偏差(误差,称

我想计算两个相关数组(如下表)的多个连续间隔的平均值和标准偏差,其中前两列分别是(比方说)时间和距离。第三、第四和第五是平均时间(中心)、平均距离和偏差标准。(事实上,这张单子是我亲手写的)。如何在示例中看到每三个连续间隔的平均值和标准偏差(但通常可以超过4乘4、10乘10等等)

所以,我有类似的长列表,我想计算(可能是熊猫、NUMPY和/或SCIPY)这样的东西,做一些循环,创建平均时间、平均距离和偏差标准的数组。因此,能够绘制距离与时间的关系图,并绘制时间和距离的平均值及其标准偏差(误差,称为西格玛)

我使用
errorbar
绘制了这个图,但我的问题是如何为每个间隔执行循环

您可以使用numpy来实现这一点<代码>重塑可用于将数据分组到块中以计算统计数据:

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)

谢谢,还有一件事。我得到了数小时的数据(每秒1个),数组的长度并不总是我计算平均值的行数的倍数(“同时=平均值(time.reformate(-1,3),axis=1)”,在这种情况下为3)。那我怎么办呢?例如,我得到了“11*3600+20*60+45”秒的数据,即11h20m45s,如果我想计算每分钟的平均值“同时=平均值(time.reforme(-1,60),axis=1)”“我会出错”回溯(最近一次调用):文件“”,第1行,in-ValueError:新数组的总大小必须保持不变'我想我可以删除一些数据,并在结尾或开始时使用delete获得长度倍数,但这是一种实用的方法吗?您可以填充数据,使其为60的倍数,也可以使用np.array\u split将数据分组,而不引起错误。下面是一个例子:
immediate=[np.array中i的np.mean(i)_split(time,len(time)/60)]
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)