我有一个数组,其中包含表示距离的数字,另一个数组表示该距离处的某些值。 如何计算固定距离值处所有数据的平均值?
例如距离 (d):
[1 1 14 6 1 12 14 6 6 7 4 3 7 9 1 3 3 6 5 8]
例如对应距离输入的数据:
因此在 d=1 时值=3.3;在 d=1 时值=2,1; d=14 时值=3.5;等..
[3.3 2.1 3.5 2.5 4.6 7.4 2.6 7.8 9.2 10.11 14.3 2.5 6.7 3.4 7.5 8.5 9.7 4.3 2.8 4.1]
例如在距离 d=6 时,我应该取 2.5、7.8、9.2 和 4.3 的平均值
我想对出现在我的向量“d”中的所有 d 值执行此操作,并创建一个与距离相对应的平均值向量(或矩阵)。
预先感谢您的大力帮助!
最佳答案
众所周知,Pandas 可以促进此类操作:
dist=[1,1,14,6,1,12,14,6,6,7,4,3,7,9,1,3,3,6,5,8]
val=[3.3,2.1,3.5,2.5,4.6,7.4,2.6,7.8,9.2,10.11,14.3,2.5,6.7,3.4,7.5,8.5,9.7,4.3,2.8,4.1]
import pandas as pd
df=pd.DataFrame()
df['val']=val
df['dist']=dist
df.groupby('dist').mean()
打印:
dist
1 4.375
3 6.900
4 14.300
5 2.800
6 5.950
7 8.405
8 4.100
9 3.400
12 7.400
14 3.050
关于python - 数组某些值的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35164801/