我通过N,a = np.histogram(z,bins=50)
使用numpy直方图计算了直方图切片。现在,我的 a
包含 z
的 50 个切片的值,而 N
包含这些切片内的计数。
我想计算 a
的 R-r
我已经尝试过
result = [R-r for R,r in zip(a[1:],a)]
但似乎不起作用。我在这里做错了什么?
最佳答案
您只需使用 numpy.diff
为此:
>>> a = np.array([1,3,6,8,17,23,45])
>>> np.diff(a)
array([ 2, 3, 2, 9, 6, 22])
编辑:
您的代码也运行良好,但您不应该为此使用列表理解,因为 NumPy 已经为此提供了一个函数,因为它将既快速又高效。
>>> a = np.array([1,3,6,8,17,23,45])
>>> [R-r for R,r in zip(a[1:],a)]
[2, 3, 2, 9, 6, 22]
关于Python numpy 数组计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25032843/