[R-es] Resultado operación entre dataframes
David Camilo Gomez Medina
dcgomezme @end|ng |rom un@|@edu@co
Mie Mar 15 18:38:56 CET 2023
Hola a todos,
Muchísimas gracias por sus comentarios y ayuda. Me sirvió mucho las maneras
que me mostraron de solucionar el problema. Encontré otra manera de
resolverlo utilizando la librería dplyr, me gustaría compartirles esta
forma:
df_1 %>%
mutate(across(all_of(df_2$nombre), ~ . - df_2$valor[match(cur_column(),
df_2$nombre)]))
Cordialmente,
David.
On Tue, 14 Mar 2023 at 14:45, David Camilo Gomez Medina <
dcgomezme using unal.edu.co> wrote:
> Buen día estimados,
>
> Tengo el siguiente código:
>
> df_1 <- data.frame(ana = c(15, 20, 30), maria = c(15,20,30), jose = c(15,
> 20, 30))
>
> df_2 <- data.frame(nombre = c("jose", "ana", "maria"), valor = c(1,2,3))
>
> # Find the corresponding columns in df_1 based on the values in df_2$nombre
> cols <- match(df_2$nombre, names(df_1))
>
> # Subtract the values of df_2$valor from the corresponding columns of df_1
> df_1[,cols] <- df_1[,cols] - (df_2$valor)
>
> # Print the resulting data frame
> df_1
>
> y mi resultado es el siguiente:
>
> ana maria jose
> 1 14 14 14
> 2 18 18 18
> 3 27 27 27
>
> Pero el resultado debería ser:
>
> ana maria jose
> 1 13 12 14
> 2 18 17 19
> 3 28 27 29
>
> ¿Saben qué podría estar pasando?
>
> Quedo muy atento, gracias.
>
>
--
*Aviso legal:* El contenido de este mensaje y los archivos adjuntos son
confidenciales y de uso exclusivo de la Universidad Nacional de Colombia.
Se encuentran dirigidos sólo para el uso del destinatario al cual van
enviados. La reproducción, lectura y/o copia se encuentran prohibidas a
cualquier persona diferente a este y puede ser ilegal. Si usted lo ha
recibido por error, infórmenos y elimínelo de su correo. Los Datos
Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra
Política de Datos Personales que podrá consultar en la página web
www.unal.edu.co <http://www.unal.edu.co/>.* *Las opiniones, informaciones,
conclusiones y cualquier otro tipo de dato contenido en este correo
electrónico, no relacionados con la actividad de la Universidad Nacional de
Colombia, se entenderá como personales y de ninguna manera son avaladas por
la Universidad.
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es