【问题标题】:How can we generate a sequence of numbers from Polynomial regression curve?我们如何从多项式回归曲线生成数字序列?
【发布时间】:2021-08-04 15:12:36
【问题描述】:

我错过了数据集的一部分,即网球在视频中每一帧的位置。缺少的部分是当球员击球时,球会上升并下降到第二个球员身上,形成曲线形状。 我已经使用多项式回归方法创建了曲线,如图所示。enter image description here 曲线显示了丢失数据前的十个点和丢失数据后的十个点。 现在,我们如何从我使用 python 创建的曲线中生成一系列点,即缺失的数据?!

缺失的数据点:

([1189,1188, 1186,1187,1184,1183,1182,1181,1181,1181[缺失数据]908,906,901,900,898,893,888,883,878,879]) ([221,216,213,212,209,205,200,195,195,195[缺失数据]212,222,235,235,249,263,276,292,303,303])

这是我用来创建曲线的代码:

import numpy as np
import matplotlib.pyplot as plt

x = np.array([1189,1188, 1186,1187,1184,1183,1182,1181,1181,1181,908,906,901,900,898,893,888,883,878,879])
y = np.array([221,216,213,212,209,205,200,195,195,195,212,222,235,235,249,263,276,292,303,303])

model = np.poly1d(np.polyfit(x,y,3))
line = np.linspace(np.min(x), np.max(x), num=100)
plt.scatter(x, y)
plt.plot(line, model(line))
plt.show() 

【问题讨论】:

  • 图片好像不见了。
  • 是的。抱歉,请添加它。

标签: python numpy matplotlib computer-science


【解决方案1】:

您的模型是使用np.polyfit获得的:

fitted_parameters = np.polyfit(x,y,3)

您可以使用np.polyval进行预测:

x = 1050
prediction = np.polyval(fitted_parameters, x)
# The prediction value for x = 1050 is y = 8.64

因此只需使用np.linspace 获得一组均匀分布的x 值,并使用np.polyval 获得曲线(缺少的y 值)。

【讨论】:

  • 非常感谢。
  • 这很有帮助。我很感激:)
猜你喜欢
  • 2016-06-10
  • 1970-01-01
  • 2021-01-28
  • 2019-02-27
  • 1970-01-01
  • 2019-11-29
  • 2014-06-13
相关资源
最近更新 更多