我有一个基本上返回广义谐波数的函数。
def harmonic(limit, z):
return numpy.sum(1.0/numpy.arange(1, limit+1)**z)
以下是当前函数定义的两个示例:
>>> harmonic(1, 1)
1.0
>>> harmonic(2, 1)
1.5
正如您可能猜到的那样,当它是标量时它工作得很好limit
,但是我怎样才能使这个函数也适用于 1D 和 2D 数组呢?
下面演示我要实现的功能的示例输出
>>> limit = np.array([[1, 2], [3, 4]])
>>> harmonic(limit, 1)
array([[1.0, 1.5], [1.833, 2.083]])