Contenido de este artículo
- 0
- 0
- 0
- 0
Actualizado el 17 de julio de 2024, por Luis Benites.
A menudo, es posible que desee crear una nueva variable en un marco de datos en R en función de alguna condición. Afortunadamente esto es fácil de hacer uso de la mutan () y case_when () funciones de la dplyr paquete.
Este tutorial muestra varios ejemplos de cómo utilizar estas funciones con el siguiente marco de datos:
#create marco de datos
df <- data.frame (jugador = c ('a', 'b', 'c', 'd', 'e'),
posición = c ('G', 'F', 'F', 'G', 'G'),
puntos = c (12, 15, 19, 22, 32),
rebotes = c (5, 7, 7, 12, 11))
#ver marco de datos
df
puntos de posición del jugador rebotes
1 a G 12 5
2 b F 15 7
3 c F 19 7
4 días G 22 12
5 e G 32 11
Ejemplo 1: crear una nueva variable basada en una variable existente
El siguiente código muestra cómo crear una nueva variable llamada ‘anotador’ basada en el valor en la columna de puntos:
biblioteca (dplyr)
#define nueva variable 'anotador' usando mutar () y case_when ()
df%>%
mutar (anotador = case_when (puntos <15 ~ ' bajo ',
puntos <25 ~ ' med ',
puntos <35 ~ ' alto '))
jugador posición puntos rebotes goleador
1 a G 12 5 bajo
2 b F 15 7 med
3 c F 19 7 med
4 d G 22 12 med
5 e G 32 11 alto
Ejemplo 2: crear una nueva variable basada en varias variables existentes
El siguiente código muestra cómo crear una nueva variable llamada ‘tipo’ basada en el valor en la columna de jugador y posición:
biblioteca (dplyr)
#define nueva variable 'tipo' usando mutar () y case_when ()
df%>%
mutar (tipo = case_when (reproductor == 'a' | reproductor == 'b' ~ ' arranque ',
jugador == 'c' | jugador == 'd' ~ ' copia de seguridad ',
posición == 'G' ~ ' reserva '))
jugador posición puntos rebotes tipo
1 a G 12 5 arrancador
2 b F 15 7 motor de arranque
3 c F 19 7 copia de seguridad
4 d G 22 12 respaldo
5 e G 32 11 reserva
El siguiente código muestra cómo crear una nueva variable llamada ‘valueAdded’ basada en el valor en las columnas de puntos y rebotes:
biblioteca (dplyr)
#define nueva variable 'valor agregado' usando mutar () y case_when ()
df%>%
mutar (valor agregado = case_when (puntos <= 15 y rebotes <= 5 ~ 2,
puntos <= 15 y rebotes> 5 ~ 4,
puntos <25 y rebotes <8 ~ 6,
puntos <25 y rebotes> 8 ~ 7,
puntos> = 25 ~ 9))
posición del jugador puntos rebotes valor
1 a G 12 5 2
2 b F 15 7 4
3 c F 19 7 6
4 días G 22 12 7
5 e G 32 11 9
Recursos adicionales
Cómo cambiar el nombre de las columnas en R
Cómo eliminar columnas en R
Cómo filtrar filas 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: