【问题标题】:How to optimize multivariate functions in Python如何在 Python 中优化多元函数
【发布时间】:2021-12-10 12:09:51
【问题描述】:

我有这个数据框:

地点:

x: independent variable
y: independent variable
z: dependent variable

如何在 Python 中找到最优的“a”和“b”参数,以便我优化这个函数:

z = a*sin(x) + b*sin(y)

我知道最优解是:

a = 0
b = 1

但是我应该使用什么 Python 代码?我想我应该使用 scipy 优化,但我只能将它与一个自变量一起使用。

【问题讨论】:

  • 你能分享你的数据框吗? (例如,通过提供df.to_records() 的输出)

标签: python pandas scipy-optimize


【解决方案1】:

你不妨考虑sklearn

假设您的数据帧名为df,您可能想要做的第一件事是创建一个变量X,其中包含x,y 的正弦变换,例如

from math import sin


X = [[sin(x), sin(y)] for x, y in zip(df.x, df.y)]

然后是变量Z,即df.z

最后,您可以使用sklearn 进行线性回归拟合,例如

from sklearn.linear_model import LinearRegression

reg = LinearRegression().fit(X, Z)

【讨论】:

  • 啊,这就是我错过的一点!谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-01-25
  • 1970-01-01
  • 1970-01-01
  • 2019-07-16
  • 2020-07-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多