我已经检查了post1、post2、post3和post4,但没有帮助。
我有一个关于特定植物的data,包括两个变量,称为“年龄”和“高度”。它们之间的相关性是非线性的。
为了适应一个模型,我假设一个解决方案如下:
如果非线性函数为
所以我们把第一个非线性函数变成了一个多元线性回归函数。基于此,我有以下代码:
data['K'] = data["Age"].pow(2)
x = data[["Age", "K"]]
y = data["Height"]
model = LinearRegression().fit(x, y)
print(model.score(x, y)) # = 0.9908571840250205
谢谢
希望你在这里使用SKLearn没有宗教热情,因为我建议的答案是完全忽略它
如果你有兴趣做回归分析,在那里你可以完全自主地使用拟合函数,我建议你直接使用最小二乘优化算法来驱动这类工作,你可以使用
scipy
现在这是一种数值方法来解决这个问题,所以我建议你花点时间来确保你理解这种方法的局限性——但是对于像这样的问题,我发现它们完全可以实现非线性数据集的功能化,而不必试着在一个线性流形中挥手
关于三次多项式
您可以通过拟合log(y)来处理指数数据。 或者找到一些可以自动拟合多项式的库t.ex:https://numpy.org/doc/stable/reference/generated/numpy.polyfit.html
相关问题 更多 >
编程相关推荐