R语言 拟合平滑曲线到数据图上
在这篇文章中,我们将学习在R编程中为数据图拟合平滑曲线的概念。平滑化是数据分析中的一个重要概念。它也被称为曲线拟合和低通滤波。最常见的用于平滑的非参数方法是loess()函数。Loess是Local Regression的缩写,用于在本地邻域内拟合多个回归结果。span参数用于控制邻域的大小。跨度值越大,拟合的曲线就越平滑。
Loess()函数的使用: Loess()函数用于对数字向量进行平滑处理。它也被用来预测Y的局部。
语法: Loess(y ~ x)
返回: 将平滑的曲线绘制在数据上
例子1: 下面是一个实现,将一条平滑的曲线拟合到一个图上。
# Create example data
set.seed(159632)
x <- 1:80
y <- sort(rnorm(80))
# Apply loess function
values <- loess(y ~ x)
plot(x, y)
lines(predict(values),
col = "blue",
lwd = 2)
输出
在上面的例子中,loess()函数被用来拟合一条平滑曲线。lwd参数用于指定平滑曲线的线条类型。参数x和y用于为绘图提供协调。然后,loess函数将在绘图中设置一条平滑曲线。
例2: 另一个例子是用loess()函数来说明的。
x <- c(7 ,5, 2, 9, 1, 9, 17, 8, 9, 10)
y <- c(12, 14, 16, 18, 20, 2, 4, 6, 8, 7 )
values <- loess(y ~ x)
plot(x, y)
lines(predict(values), col = 'red', lwd = 2)
输出
在上述例子中,X轴和Y轴的数值被绘制出来。使用loess函数拟合出平滑的曲线。预测结果将是平滑拟合曲线中适当尺寸的数组。