根据给定的数据点 (1814,7),(1824,13),(1834,23),(1844,41),(1854,74),(1864,133),(1874,239),(1884,318),(1894,364),(1904,387),(1914,398),(1924,400),我们可以看出 x 和 y 之间的关系是非线性的。因此,我们不能得到一个确定的 k 值。

如果我们尝试使用最小二乘法来拟合数据,我们可以得到一个近似的 k 值。最小二乘法通过最小化实际数据点与拟合曲线之间的误差来找到最佳拟合曲线。

在这种情况下,我们可以尝试使用多项式回归来拟合数据。多项式回归可以通过将数据拟合到一个多项式方程来适应非线性关系。

我们可以使用 Python 中的 numpy 和 matplotlib 库来进行多项式回归并绘制拟合曲线。下面是一个示例代码:

import numpy as np
import matplotlib.pyplot as plt

# 输入数据点
x = [1814, 1824, 1834, 1844, 1854, 1864, 1874, 1884, 1894, 1904, 1914, 1924]
y = [7, 13, 23, 41, 74, 133, 239, 318, 364, 387, 398, 400]

# 进行多项式回归拟合
degree = 3  # 多项式的次数
coefficients = np.polyfit(x, y, degree)
poly = np.poly1d(coefficients)

# 绘制拟合曲线
x_range = np.linspace(min(x), max(x), 100)
y_range = poly(x_range)

plt.scatter(x, y, color='red', label='Data Points')
plt.plot(x_range, y_range, color='blue', label='Fitted Curve')
plt.xlabel('X')
plt.ylabel('Y')
plt.legend()
plt.show()

# 输出拟合方程的系数
print('拟合方程的系数:', coefficients)

运行这段代码,你会得到一个拟合曲线,以及多项式回归拟合方程的系数。该拟合方程的形式为: y = ax^3 + bx^2 + c*x + d,其中 a、b、c、d 是拟合方程的系数。

请注意,这只是一个近似值,可能与实际情况略有不同。如果数据点更多或者有更多的背景信息,可以尝试使用更高次数的多项式来得到更好的拟合结果。

非线性数据拟合:使用多项式回归分析 (1814,7) 至 (1924,400) 数据

原文地址: http://www.cveoy.top/t/topic/Kwj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录