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.

¿Cómo encontrar la distribución de pares en una matriz de 2 columnas en R?

Supongamos que tengo un conjunto de pares que los represento en una matriz de 2 columnas de la siguiente manera:

> myMatrix
     [,1] [,2]
[1,]    1    5
[2,]    2    6
[3,]    3    7
[4,]    2    6

Como puedes ver, el par (2,6) se ha repetido dos veces. Necesito una solución para recuperar información de esta manera:

     [,1] [,2] [,3]
[1,]    1    5   1
[2,]    2    6   2
[3,]    3    7   1

¿Existe alguna solución para esto?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una solución para esto. Puedes convertir la matriz en un data frame y usar el paquete dplyr para agrupar los pares y contar las ocurrencias utilizando la función count().

    Aquí está el código:

    library(dplyr)
    
    myMatrix <- matrix(c(1,5,2,6,3,7,2,6), ncol=2)
    
    myDataFrame <- as.data.frame(myMatrix)
    
    countedData <- myDataFrame %>% group_by_all() %>% tally()
    

    El data frame countedData resultante tendrá el resultado deseado como se muestra en la pregunta.

Comments are closed.