Cómo centrar datos en R (con ejemplos)

Para centrar un medio de conjunto de datos para restar el valor medio de cada observación individual en el conjunto de datos.

Por ejemplo, supongamos que tenemos el siguiente conjunto de datos:

Resulta que el valor medio es 14. Por lo tanto, para centrar este conjunto de datos, restaríamos 14 de cada observación individual:

Cómo centrar los datos

Tenga en cuenta que el valor medio del conjunto de datos centrado es cero.

Este tutorial proporciona varios ejemplos de cómo centrar datos en R.

Ejemplo 1: centrar los valores de un vector

El siguiente código muestra cómo usar la función scale () desde la base R para centrar los valores en un vector:

#crear vector
datos <- c (4, 6, 9, 13, 14, 17, 18, 19, 19, 21)

#Restar el valor medio de cada observación en la escala vectorial
 (datos, escala = FALSO )

      [, 1]
 [1,] -10
 [2,] -8
 [3,] -5
 [4,] -1
 [5,] 0
 [6,] 3
 [7,] 4
 [8,] 5
 [9,] 5
[10,] 7

attr (, "escalado: centro")
[1] 14

Los valores resultantes son los valores centrados del conjunto de datos. La función scale () también nos dice que el valor medio del conjunto de datos es 14.

Tenga en cuenta que la función scale () , por defecto, resta la media de cada observación individual y luego divide por la desviación estándar.

Al especificar scale = FALSE , le decimos a R que no divida por la desviación estándar.

Ejemplo 2: centrar las columnas en un marco de datos

El siguiente código muestra cómo usar la función sapply () y la función scale () desde la base R para centrar los valores de cada columna de un marco de datos:

#create marco de datos
df <- data.frame (x = c (1, 4, 5, 6, 6, 8, 9),
                 y = c (7, 7, 8, 8, 8, 9, 12),
                 z = c (3, 3, 4, 4, 6, 7, 7))

#centrar cada columna en el marco de datos
 df_new <- sapply (df, function (x) scale (x, scale = FALSE ))

#display marco de datos
 df_new

              xyz
[1,] -4.5714286 -1.4285714 -1.8571429
[2,] -1,5714286 -1,4285714 -1,8571429
[3,] -0.5714286 -0.4285714 -0.8571429
[4,] 0.4285714 -0.4285714 -0.8571429
[5,] 0.4285714 -0.4285714 1.1428571
[6,] 2.4285714 0.5714286 2.1428571
[7,] 3.4285714 3.5714286 2.1428571

Podemos verificar que la media de cada columna en el nuevo marco de datos es igual a cero usando la función colMeans () :

colMeans (df_new)

            xyz 
 2.537653e-16 -2.537653e-16 3.806479e-16 

Los valores se muestran en notación científica, pero cada valor es esencialmente igual a cero.

Recursos adicionales

Cómo promediar entre columnas en R
Cómo sumar columnas específicas en R
Cómo eliminar valores atípicos de varias columnas 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

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

En estadística, una observación influyente es una observación en un conjunto de datos que, cuando se elimina, cambia drásticamente las…
statologos comunidad-2

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

You have Successfully Subscribed!