- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在使用 numpy.polyfit
函数进行一些预测。如果我输入 1 的次数,它会起作用,但我需要进行二次多项式拟合。在某些情况下它有效,在其他情况下,预测的情节下降然后永远上升。例如:
import matplotlib.pyplot as plt
from numpy import *
x=[1,2,3,4,5,6,7,8,9,10]
y=[100,85,72,66,52,48,39,33,29,32]
fit = polyfit(x, y, degree)
fitfunction = poly1d(z4)
to_predict=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
plt.plot(to_predict,fitfunction(to_predict))
plt.show()
在我运行之后,它出现了(我试着放一张图片,但 stackoverflow 不允许我)。
我想强制它通过零。
我该怎么做?
最佳答案
如果您不需要使用原始最小二乘公式计算拟合误差(即最小化 ∑ |yi - (axi2 + bxi)|2), 你可以尝试执行 y/x
的线性拟合> 相反,因为 (ax2 + bx)/x = ax + b。
如果必须使用相同的误差度量,直接构造系数矩阵并使用 numpy.linalg.lstsq
:
coeff = numpy.transpose([x*x, x])
((a, b), _, _, _) = numpy.linalg.lstsq(coeff, y)
polynomial = numpy.poly1d([a, b, 0])
(请注意,您提供的数据序列看起来不像是 y 截距为 0 的抛物线。)
关于python - 如何强制二阶 polyfit 的 y 截距为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11595740/
这个问题在这里已经有了答案: Relationship between SciPy and NumPy (8 个答案) 关闭 6 年前。 我开始知道 numpy 和 scipy 都有 polyfit
为什么要 numpy.polyfit 和 numpy.polynomial.polynomial.polyfit 在下面的测试中产生不同的图? import numpy as np from nump
有没有办法计算两个变量的多项式模型的参数。它们是独立的,因此: z = a + bx + cx^2 + dy + ey^2 有人告诉我,您可以为此使用 numpy.polyfit,但它只能支持两个变量
有什么区别 https://docs.scipy.org/doc/numpy/reference/generated/numpy.polyfit.html 和 https://docs.scipy.o
我使用了 numpy 的 polyfit 并获得了两个数组 x 和 y 的非常好的拟合(使用 7 阶多项式)。我的关系是这样的; y(x) = p[0]* x^7 + p[1]*x^6 + p[2]*
我正在尝试将二次方程拟合到一些实验数据并在 numpy 中使用 polyfit。我希望得到一条凹曲线,因此要确保二次项的系数为负,并且拟合本身也是加权的,因为点上有一些权重。有没有简单的方法来做到这一
我有一个对象以抛物线模式抛出的信息。从开始位置到结束位置以特定间隔总共拍摄了 30 张图像。 现在我已经设法提取了在所有 30 个图像中抛出的对象的 x,y 坐标...... 我认为使用 polyfi
我正在模拟三体问题并绘制 3D 轨迹图。我试图弄清楚如何通过使用 np.polyfit 扩展绘图线来预测这些行星的轨迹。我有使用数据框和 2D 图执行此操作的经验,但没有在 3D 中且不使用任何类型的
我正在尝试使用np.polyfit,但我不断收到错误: TypeError: polyfit() got an unexpected keyword argument 'w' documentatio
我有一个包含 20 列的数据框。我希望创建散点图,每个散点图都有一条最合适的线。 x 列将保持不变,我想使用 for 循环遍历数据框中的每个其他列。结果将是 19 个散点图。 我当前的设置看起来像这样
当用一条直线拟合一组数据并用误差加权时,我期望 polyfit 返回一个 2x2 协方差矩阵,我可以从中对对角线元素求平方根以找到系数中的不确定性,但我没有. 这是一个最小的工作示例: from nu
我找不到调整数据的曲线(列出“chi”和“m”)。我使用 polyfit 生成曲线,但它不足以捕捉点的行为。 前面的代码有一个图表,显示了数据和调整之间的差异。 import matplotlib.p
我想向量化以下函数 def nppolyfit(pnp_array, **kwargs): """ Moving polyfit """ win_size = kwargs['length
我浏览了文档,但无法正确解释 在我的代码中,我想找到一条通过 2 个点 (x1,y1), (x2,y2) 的直线,所以我使用了 np.polyfit((x1,x2),(y1,y2),1)因为它是一个
在用numpy的polyfit创建一条best fit时,可以指定参数full为True。除了系数之外,这会返回 4 个额外的值。这些值是什么意思,它们告诉我函数与我的数据的拟合程度如何? https
我有一些数据,我希望对其进行建模,以便能够在与数据相同的范围内获得相对准确的值。 为此,我使用 polyfit 来拟合 6 阶多项式,由于我的 x 轴值,它建议我将其居中并缩放以获得更准确的拟合。 但
这只是一个基本问题。我正在使用 polyfit 拟合线以散点。在某些情况下,我的散点具有相同的 X 值,而 polyfit 无法为其拟合一条线。必须有一些东西可以处理这种情况。毕竟,它只是一个线条配合
我正在尝试适应这些值: 这是我的代码: for i in range(-area,area): stDev1= [] for j in range(-area,area):
关于此:polynomial equation parameters我得到平方函数的 3 个参数 y = a*x² + b*x + c 现在我只想得到描述我的平方函数的 first 参数函数 y =
Polyfit 是一个很好的工具,可以将一条线拟合到一组点上。然而,我的数据具有不同程度的统计显着性。 例如,对于一个点 (x1,y2) 我可能只有 10 个观测值,而对于另一个点 (x2,y2) 我
我是一名优秀的程序员,十分优秀!