Как выполнить слабое сглаживание в r (шаг за шагом)
В статистике термин lowess относится к «сглаживанию локально взвешенных облаков точек» — процессу создания плавной кривой, соответствующей точкам данных в облаке точек.
Чтобы выполнить сглаживание lowess в R, мы можем использовать функцию lowess() , которая использует следующий синтаксис:
нижний (x, y, f = 2/3)
Золото:
- x: числовой вектор значений x.
- y: числовой вектор значений y.
- f: значение для наиболее гладкого экстента. Это дает долю точек на графике, которая влияет на сглаживание при каждом значении. Более высокие значения приводят к большей плавности.
В следующем пошаговом примере показано, как выполнить слабое сглаживание для заданного набора данных в R.
Шаг 1. Создайте данные
Сначала давайте создадим поддельный набор данных:
df <- data. frame (x=c(1, 1, 2, 2, 3, 4, 6, 6, 7, 8, 10, 11, 11, 12, 13, 14), y=c(4, 7, 9, 10, 14, 15, 19, 16, 17, 21, 22, 34, 44, 40, 43, 45))
Шаг 2. Постройте график данных
Далее давайте построим график значений x и y набора данных:
plot(df$x, df$y)
Шаг 3: Нарисуйте минимальную кривую
Далее построим самую слабую кривую сглаживания по точкам диаграммы рассеяния:
#create scatterplot plot(df$x, df$y) #add lowess smoothing curve to plot lines(lowess(df$x, df$y), col=' red ')
Шаг 4. Отрегулируйте более мягкий охват (необязательно)
Мы также можем настроить аргумент f в функции lowess(), чтобы увеличить или уменьшить значение, используемое для более сглаженного экстента.
Обратите внимание: чем больше значение, которое мы указываем, тем более плавной будет нижняя кривая.
#create scatterplot plot(df$x, df$y) #add lowess smoothing curves lines(lowess(df$x, df$y), col=' red ') lines(lowess(df$x, df$y, f=0.3), col=' purple ') lines(lowess(df$x, df$y, f=3), col=' steelblue ') #add legend to plot legend(' topleft ', col = c(' red ', ' purple ', ' steelblue '), lwd = 2, c(' Smoother = 1 ', ' Smoother = 0.3 ', ' Smoother = 3 '))
Дополнительные ресурсы
Как построить несколько линий на графике в R
Как создать диаграмму рассеяния с линией регрессии в R
Как выполнить полиномиальную регрессию в R