Cómo realizar el suavizado de Lowess en R (paso a paso)

Actualizado el 7 de mayo de 2021, por Luis Benites.

En estadística, el término lowess se refiere al «suavizado de la gráfica de dispersión ponderada localmente», el proceso de producir una curva suave que se ajusta a los puntos de datos en una gráfica de dispersión.

Para realizar el suavizado de lowess en R podemos usar la función lowess () , que usa la siguiente sintaxis:

bajita (x, y, f = 2/3)

dónde:

  • x: Un vector numérico de valores x.
  • y: Un vector numérico de valores de y.
  • f: El valor para el intervalo más suave. Esto da la proporción de puntos en la gráfica que influyen en la suavidad en cada valor. Los valores más altos dan como resultado una mayor suavidad.

El siguiente ejemplo paso a paso muestra cómo realizar un suavizado más bajo para un conjunto de datos dado en R.

Paso 1: crear los datos

Primero, creemos un conjunto de datos falso:

df <- datos. marco (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))

Paso 2: trazar los datos

A continuación, grafiquemos los valores xey del conjunto de datos:

plot (df $ x, df $ y)

Paso 3: trazar la curva de Lowess

A continuación, tracemos la curva de suavizado más baja sobre los puntos en la gráfica de dispersión:

#create scatterplot
plot (df $ x, df $ y)

#add curva de suavizado de lowess para trazar 
líneas (lowess (df $ x, df $ y), col = ' red ')

Ejemplo de suavizado de Lowess en R

Paso 4: ajuste el intervalo más suave (opcional)

También podemos ajustar el argumento f en la función lowess () para aumentar o disminuir el valor usado para el intervalo más suave.

Tenga en cuenta que cuanto mayor sea el valor que proporcionemos, más suave será la curva más baja.

#create scatterplot
plot (df $ x, df $ y)

#add lowess suavizando 
líneas curvas (lowess (df $ x, df $ y), col = ' red ')
líneas (lowess (df $ x, df $ y, f = 0.3), col = ' violeta ')
líneas (lowess (df $ x, df $ y, f = 3), col = ' steelblue ')

#add leyenda para trazar la
 leyenda (' topleft ',
       col = c (' rojo ', ' violeta ', ' azul acero '),
       lwd = 2,
       c (' Más suave = 1 ', ' Más suave = 0.3 ', ' Más suave = 3 '))

Curvas de suavizado más bajas en R

Recursos adicionales

Cómo trazar varias líneas en un gráfico en R
Cómo crear un diagrama de dispersión con una línea de regresión en R
Cómo realizar una regresión polinomial en R

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

Deja un comentario

A menudo, en estadística, nos interesa determinar el valor p asociado con una determinada puntuación t que resulta de una…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!