Contenido de este artículo
- 0
- 0
- 0
- 0
A menudo, es posible que desee recorrer los nombres de columna de un marco de datos en R y realizar alguna operación en cada columna. Hay dos formas habituales de hacer esto:
Método 1: utilizar un bucle for
for (i en colnames (df)) {
alguna operación
}
Método 2: use sapply ()
sapply (df, alguna operación )
Este tutorial muestra un ejemplo de cómo utilizar cada uno de estos métodos en la práctica.
Método 1: utilizar un bucle for
El siguiente código muestra cómo recorrer los nombres de columna de un marco de datos usando un bucle for y generar el valor medio de cada columna:
#create marco de datos
df <- data.frame (var1 = c (1, 3, 3, 4, 5),
var2 = c (7, 7, 8, 3, 2),
var3 = c (3, 3, 6, 6, 8),
var4 = c (1, 1, 2, 8, 9))
#ver marco de datos
df
var1 var2 var3 var4
1 1 7 3 1
2 3 7 3 1
3 3 8 6 2
4 4 3 6 8
5 5 2 8 9
# recorra cada columna e imprima la media de la columna
para (i en colnames (df)) {
imprimir ( media (df [[i]]))
}
[1] 3.2
[1] 5,4
[1] 5,2
[1] 4.2
Método 2: use sapply ()
El siguiente código muestra cómo recorrer los nombres de columna de un marco de datos usando sapply () y generar el valor medio de cada columna:
#create marco de datos
df <- data.frame (var1 = c (1, 3, 3, 4, 5),
var2 = c (7, 7, 8, 3, 2),
var3 = c (3, 3, 6, 6, 8),
var4 = c (1, 1, 2, 8, 9))
#ver marco de datos
df
var1 var2 var3 var4
1 1 7 3 1
2 3 7 3 1
3 3 8 6 2
4 4 3 6 8
5 5 2 8 9
# recorra cada columna e imprima la media de la columna
sapply (df, mean )
var1 var2 var3 var4
3,2 5,4 5,2 4,2
Observe que los dos métodos devuelven resultados idénticos.
Relacionado: Una guía para aplicar (), lapply (), sapply () y tapply () en R
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/
¿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: