Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python numpy数组计算_Python_Numpy_Iteration - Fatal编程技术网

Python numpy数组计算

Python numpy数组计算,python,numpy,iteration,Python,Numpy,Iteration,我已经通过N,a=np.直方图(z,bins=50)使用numpy直方图计算了一个直方图切片。现在我的a包含z的50个片段的值,N包含这些片段中的计数 我想计算a的R-R 我试过了 result = [R-r for R,r in zip(a[1:],a)] 但它似乎不起作用。我做错了什么 您只需为此使用: >>> a = np.array([1,3,6,8,17,23,45]) >>> np.diff(a) array([ 2, 3, 2, 9,

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

我想计算
a的
R-R

我试过了

result = [R-r for R,r in zip(a[1:],a)]
但它似乎不起作用。我做错了什么

您只需为此使用:

>>> 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]

@user3397243您的代码对我来说很好,但是如果NumPy已经提供了一个函数,那么您不应该列出理解。对于柱状图切片,同样不适用!!i、 e如果我有
b,a=np。直方图(r,bins=50)
,我说
result=np.diff(a)
@user3397243,那么
a
在这里包含什么?
a
包含在50个箱子中切片的
r
的数量,而
b
包含在这些切片中的数量我已经正确编辑了我的问题。请看一下代码很好,输出:
[2,3,2,9,6,22]
,“但它似乎不起作用”,你能更具体一点吗?@KobiK当我做上述操作时,我得到的是
结果=[1,1,1,1,1,1,1,1]
@user3397243这是不可能的,除非你有一个像[1,2,3,…]@user3397243您能附加代码吗?@user3397243:为什么要处理第二个返回值?那是垃圾箱的边缘。如果这是一个图形柱状图,你应该用图形底部的小记号来计算,而不是看条形图的高度。