Python numpy 数组计算

标签 python numpy iteration

我通过N,a = np.histogram(z,bins=50)使用numpy直方图计算了直方图切片。现在,我的 a 包含 z 的 50 个切片的值,而 N 包含这些切片内的计数。

我想计算 aR-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/

相关文章:

python - 编程错误 1064

numpy - numpy 数组中标记组件之间的最小边到边欧氏距离

Python:将 numpy 符号数组转换为 int 并返回

c++ - Julia 设置渲染代码

python - 谷歌地图 API 的命中率限制,但不知道为什么

python - 此正则表达式的对抗性输入

python - 从最后一列向动态树添加大小

Python 特征值和特征向量

loops - groovy 中的 reverse() 方法仅仅是迭代的抽象吗?

c++ - 这些 vector 迭代形式是否相同?