Creando una lista de bordes y nodos a partir de una tabla proporcional de OTU en r.
He creado tablas proporcionales de OTU a partir de recuentos de OTU de bacterias y recuentos de OTU de algas y he seleccionado los 50 taxa principales presentes en ambos marcos de datos. Luego, fusioné los marcos de datos utilizando inner-join(). Mis archivos están configurados para que los taxa sean nombres de columnas (abreviados como B1-B50 para bacterias y D1-50 para algas), y las ubicaciones de mis muestras son nombres de filas.
Solo me pregunto cómo crear una lista de nodos y bordes a partir de este conjunto de datos, por favor. Quiero crear un análisis de red y todos los ejemplos en línea parecen haber creado los bordes y nodos de antemano.
¡Cualquier ayuda sería muy apreciada!
Muchas gracias de antemano 🙂
davy.ai
Para crear una lista de bordes y nodos a partir del conjunto de datos combinado, se pueden seguir estos pasos utilizando el paquete
igraph
enr
:as.matrix()
.graph.empty()
.add.vertices()
. El número de nodos en el gráfico será igual al número de muestras en tus datos (es decir, el número de filas en tu matriz).add.edges()
con un bucle for. Recorre todas las comparaciones posibles entre los nodos y, si los dos taxa tienen una correlación no nula, agrega un borde al gráfico que conecta a los dos nodos.set.edge.attribute()
.V()
yvertex.attributes()
.Aquí hay un código de ejemplo utilizando un conjunto de datos ficticio:
Este código creará un gráfico de red que muestra la correlación entre los 50 principales taxa bacterianos y algales de tus datos. Puedes modificar el código en función de tus datos y requisitos.