【问题标题】:Curve fitting in Python using a data sets [duplicate]使用数据集在 Python 中进行曲线拟合
【发布时间】:2014-09-18 23:39:20
【问题描述】:

我是 Python 的新手,所以我问了一个简单的问题:

我有一组数据 (x1, x2, x3, x4, x5) 和对应的 (y1, y2, y3, y4, y5)。现在,我如何使用 Python 来找到给定 x 值的 y 值? (x 位于 x1 到 x5 之间)

例如:假设我想为以下数据集找到 X = 0.9 的 Y 值。

X        Y
0.5     12
1.2     17 
1.3     23
1.6     29
2.1     33

提前致谢!!

【问题讨论】:

  • 这似乎更像是一个统计或数学问题,而不是编程问题。一旦你弄清楚要使用什么技术,你就可以询问如何在 python 中应用它。
  • 请发布您到目前为止所做的尝试
  • 您已经标记了numpyscipy,所以我假设您在尝试解决这个问题时已经使用了它们,如果可以的话,我们可以看看吗?
  • 这个问题不是重复的。一件事是问“如何将数据拟合到这条特定的曲线”,另一件事是“我怎样才能找到一个将一个数据集与另一个数据集相关联的函数”......这恰好是曲线拟合,但不必用单变量样条线完成。

标签: python numpy scipy curve-fitting linear-interpolation


【解决方案1】:

您可以使用polyfit

from numpy import polyfit


print polyfit([0.5, 1.2, 1.3, 1.6, 2.1],
              [12, 17, 23, 29, 33],
              1)  # Replace this number for the degree of the polinomium

Output degree 1 -> [ 14.02332362   4.00874636]
Output degree 2 -> [  1.17847672  10.98436544   5.64150351]

你得到的是曲线的系数:

  • 1 级:y = 14.02332362x + 4.00874636
  • 2 级:y = 1.17847672x2 + 10.98436544x + 5.64150351

【讨论】:

    猜你喜欢
    • 2021-11-14
    • 2021-10-01
    • 2015-09-14
    • 2020-03-19
    • 2015-07-04
    • 1970-01-01
    • 1970-01-01
    • 2018-11-04
    • 1970-01-01
    相关资源
    最近更新 更多