从 opt.leastsq 分配结果变量时出错
Error to allocate result variables from opt.leastsq
我正在设置一个内部定位系统,当我请求 opt.leastsq
函数时,我在字符串中得到了预期的结果,但它给我一个输出错误。
这是我的代码:
x, y, _ = opt.leastsq(F, x0=[xp, yp], Dfun=J)
上面的代码总是报错:
x, y, _ = opt.leastsq(F, x0=[xp, yp], Dfun=J)
ValueError: not enough values to unpack (expected 3, got 2)
但是当我打印这个函数时:
x = opt.leastsq(F, x0=[xp, yp], Dfun=J)
print(x)
它给了我预期的结果,除了坐标外的数字“2”:
(array([4.6243258 , 4.23836195]), 2)
我很感激谁能帮助我组织我的代码,将第一个值分配给变量 x,将第二个值分配给变量 y。如上所述,避免出现上述错误。
非常感谢您。
感谢 hpaulj 指南,能够调整两个变量“x”和“y”中的结果值。我把我所做的过程留在这里,它工作正常。我希望能对其他有同样问题的人有所帮助。
首先,我提取值并将它们放在另一个变量中,我称之为“posit”
posit, _ = opt.leastsq(F, x0=[xp, yp], Dfun=J)
然后使用“splint”函数设置每个变量的坐标值(“x”和“y”)
x, y = np.split(posit, 2, axis=0)
print("x = ",x)
print("y = ",y)
所以我得到了预期的结果,现在能够准确地在“x”和“y”坐标中分别处理这些值。
x = [3.40314229]
y = [0.79129237]
我正在设置一个内部定位系统,当我请求 opt.leastsq
函数时,我在字符串中得到了预期的结果,但它给我一个输出错误。
这是我的代码:
x, y, _ = opt.leastsq(F, x0=[xp, yp], Dfun=J)
上面的代码总是报错:
x, y, _ = opt.leastsq(F, x0=[xp, yp], Dfun=J)
ValueError: not enough values to unpack (expected 3, got 2)
但是当我打印这个函数时:
x = opt.leastsq(F, x0=[xp, yp], Dfun=J)
print(x)
它给了我预期的结果,除了坐标外的数字“2”:
(array([4.6243258 , 4.23836195]), 2)
我很感激谁能帮助我组织我的代码,将第一个值分配给变量 x,将第二个值分配给变量 y。如上所述,避免出现上述错误。
非常感谢您。
感谢 hpaulj 指南,能够调整两个变量“x”和“y”中的结果值。我把我所做的过程留在这里,它工作正常。我希望能对其他有同样问题的人有所帮助。 首先,我提取值并将它们放在另一个变量中,我称之为“posit”
posit, _ = opt.leastsq(F, x0=[xp, yp], Dfun=J)
然后使用“splint”函数设置每个变量的坐标值(“x”和“y”)
x, y = np.split(posit, 2, axis=0)
print("x = ",x)
print("y = ",y)
所以我得到了预期的结果,现在能够准确地在“x”和“y”坐标中分别处理这些值。
x = [3.40314229]
y = [0.79129237]