Numpy:计算两个指数

时间:2016-09-13 01:10:10

标签: python python-3.x numpy

我需要计算2个指数之间的平均值。假设我的指数是3和10,我想总结它们之间的所有值并除以值的数量。

最简单的方法就是使用从3开始的for循环,直到10,汇总和分割。这看起来像一个非常非pythonic的方式,考虑到Numpy提供的功能,我想也许有一个更短的方式使用一些Numpy魔术。任何建议都非常适合

2 个答案:

答案 0 :(得分:2)

要访问两个索引ij之间的所有元素,您可以使用切片:

slice_of_array = array[i: j+1] # use j if you DO NOT want index j included

并且平均值是使用np.average计算的,但在您的情况下,您希望使用元素数量进行加权,因此您只需使用np.mean

import numpy as np
mean_of_slice = np.mean(slice_of_array)

或一气呵成(使用您的指数):

i = 3
j = 10
np.mean(array[i: j+1])

答案 1 :(得分:1)

import numpy as np

np.mean(yourarray[3:11])

假设您的阵列名称是" yourarray"