es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, una forma de lograr esto es utilizando las funciones merge y anti_join en R. Aquí está el proceso paso a paso:

    1. Crea dos listas de dataframes, una para H y otra para E:

    “`{r}
    H_list <- list(H1, H2, H3, …, H18)
    E_list <- list(E1, E2, E3, …, E18)


    2. Combina todos los dataframes en cada lista utilizando `bind_rows`: ```{r} H_combined <- bind_rows(H_list) E_combined <- bind_rows(E_list)
    1. Crea un dataframe con todas las palabras en E:

    “`{r}
    E_words <- E_combined %>% distinct(AA) %>% mutate(flag = TRUE)


    4. Une el dataframe H_combined con el dataframe E_words para crear un nuevo dataframe con una columna de indicación de bandera que indica qué palabras en H también están en E: ```{r} merged <- merge(H_combined, E_words, by = "AA", all.x = TRUE)
    1. Utiliza anti_join para mantener solo las filas en el dataframe merged donde la columna de bandera es NA (lo que significa que la palabra es única para H):

    “`{r}
    unique_to_H <- anti_join(merged, filter(merged, !is.na(flag)))


    6. El dataframe `unique_to_H` ahora contendrá solo las palabras en H que no están en E. Para separar los dataframes nuevamente en sus 18 dataframes originales, puedes utilizar `split`: ```{r} H_new_list <- split(unique_to_H, rep(1:18, each = nrow(unique_to_H)/18))

    Esto debería darte una lista H_new_list con 18 dataframes, cada uno de ellos conteniendo solo las palabras únicas en sus respectivos dataframes originales.

Comments are closed.