我一直在尝试查找此函数的最小值,但我似乎无法获取正确的语法。 y2和y1a是numpy数组,它们试图传递给我的lambda函数,而x是fmin使用的第三个变量。

        y2 = numpy.array(Apple[i:i+len(Leal)])
        y1 = Leal

        y1a = y1 + dif

        y = lambda x, y2, y1a: sum(abs((y2)+x)-y1a)
        emin = fmin(y,0)


任何帮助都会很棒。

最佳答案

您的y函数采用3个值,但fmin仅提供一个值...

您需要提供一个数组作为初始估计值,或者其他参数作为args

http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.fmin.html

假设您需要后者:

fmin(y, 0, args=(y2, y1a))

关于python - 使用Python Lambda函数查找fmin,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16060356/

10-09 17:28