# Cytoscape

Cytoscape es un componente de software fundamental que es utilizado en campos de investigación de ramas como biología, sociología, informática, entre otras. Este software cuenta con aplicaciones en sitios web y servidores permitiendo a usuarios interactuar con diversas redes de visualización de datos y análisis de redes. Cytoscape es mayormente utilizado para crear visualizaciones interactivas, representación de datos o almacén de datos de redes de interacción proteína-proteína (IPP).

## Historia

Cytoscape se creó originalmente en el Instituto de Biología de Sistemas de Seattle en 2002. Actualmente, lo está desarrollando un consorcio internacional de desarrolladores de código abierto. Cytoscape se hizo público inicialmente en julio de 2002 (v0.8); la segunda versión (v0.9) estuvo disponible en noviembre de 2002 y la v1.0 se lanzó en marzo de 2003. La versión 1.1.1 es la última versión estable de la serie 1.0. La versión 2.0 se lanzó inicialmente en 2004; Cytoscape 2.8.3, la versión final 2.xx, se lanzó en mayo de 2012. El lanzamiento del Cytoscape v3 en el 2014 mejoró la compatibilidad con aplicaciones de complementos de la tiendad de extensiones, y se han centrado en actualizar funciones como los estilos visuales (VizMapper), filtrado rápido de nodos, la capacidad de la red, la velocidad en general y la interfaz. En la última versión 3.10.3 lanzada en octubre del 2024 han implementado etiquetas del panel de estilo, además de imponer el uso de nombres de columnas en todas las redes, correcciones del cuadro de diálogo, generador de ecuaciones, entre otras mejoras.

## Conceptos clave para el análisis de redes biológicas
### Nodo

Es la esquematización más simple como un punto que puede representar, por ejemplo, una proteína siendo un nodo y las proteínas que interactúan con ella se representan como nodos adyacentes conectados por una línea que refleja la interacción.
Dentro de las redes de interacción se puede determinar la importancia de un nodo de acuerdo con las medidas más utilizadas como la centralidad de grado. Cuantas más interacciones tenga un nodo, más importante será para la red, lo que se define como un nodo central.

### Interacción

Es la representación lineal de la conexión entre nodos, también llamado vértice. Una interacción entre nodos representa cómo estos, dependiendo de su entidad biológica, se relacionan entre sí para participar en un proceso biológico o en algún rool ecológico. Las interacciones también nos permiten formular hipótesis analíticas acerca de las funciones de proteínas, genes o entidades biológicas a partir de las interacciones de estos con sus primeros vecinos.

### Redes de interacción

Las redes de interacción nos ayudan a comprender las estructuras y funciones de sistemas complejos, brindando información de patrones identificables, predicción de comportamientos de sistemas, análisis de estabilidad, entre otras. Un ejemplo son las redes genéticas, que permiten estudiar patrones de conexión para identificar genes clave en rutas metabólicas. Por otra parte, en redes ecológicas, se puede analizar una red trófica para revelar datos como la importancia de ciertas especies o interacción entre especie. De igual manera, también es posible estudiar las redes de interacción proteína-proteína, las cuales representan un total de proteínas que se relacionan modularmente, es decir, que interactúan entre sí para un determinado proceso bioquímico.

### Primeros y segundos vecinos

Una red de interacción contiene nodos centrales, los nodos que interactúan directamente con los nodos centrales se conocen como primeros vecinos, los segundos vecinos son los nodos que interactúan con los primeros vecinos, pero no directamente con el nodo central.

## Topología de redes

Son las diferentes estructuras de comunicación que se pueden presentar durante la organización de una red. Cada tipo de topología nos indica que tipo de flujo de información se está llevando a cabo. Existen varios tipos de topología:
* Nodo: Es la estructura más sencilla de una red que consta de un solo nodo.
* Motivo: Es la representación de patrones entre conexiones específicas que hay entre un pequeño grupo de nodos, estos motivos tienden a presentar funciones o regular procesos.
* Módulos: Son distintos grupos de nodos que están densamente conectados entre sí. Estos módulos representan unidades funcionales dentro de una gran red; la participación de distintos nodos a manera de módulos indica que participan en el mismo proceso.
* Organización global: es la estructura global de una red y esquematiza cómo los nodos se vinculan para formar motivos, los motivos se combinan para formar módulos y los módulos se unen para formar toda la red.

## Tipos de análisis de las redes

El análisis de redes permite identificar características estructurales fundamentales que revelan información sobre la importancia relativa de los nodos y sus conexiones. A continuación, se describen dos de los análisis más utilizados en Cytoscape.

### Grado

El Grado (Degree) es el número de interacciones que tiene un nodo con otros nodos, si un nodo tiene un grado de 4 significa que está conectado a 4 nodos. Cuanto mayor sea el grado de conexión de un nodo, más central será y se puede relacionar con la importancia biológica de un gen o proteína en procesos específicos.

### Centralidad de Clique Máximo (MCC, por sus siglas en inglés)

Es un método de análisis topológico que se utiliza para identificar nodos centrales basado en cuántas “cliques máxima "contiene cada nodo. En este sentido, una “clique máxima” se define como un subconjunto de nodos que están altamente conectados entre sí, y cuyo tamaño depende del número de nodos que contiene. La diferencia entre el Degree y el MCC, es que cada nodo puede formar parte de distintos cliques, y el MCC mide que tan importante es un nodo de acuerdo con su papel en el clique más grande. Este análisis permite identificar proteínas centrales dentro de una red de interacciones.

## Tabla de comandos básicos para la construcción de redes biológicas

Para la creación de redes biológicas es necesario tener conocimientos previos sobre bases de datos que recopilan información acerca de interacciones que se desean estudiar. En algunos casos es posible extraer los datos de las interacciones de la red completa de un organismo o específicamente de módulos asociados a un mecanismo en particular. La información básica con la que se debe contar para la construcción de una red, son los nodos y el tipo de interacción que los relaciona. En algunas bases de datos es posible obtener información adicional, con la finalidad de profundizar en los análisis que se estén realizando. A continuación, se describen las cuatro formas de crear redes en Cytoscape:
| Tipo de construcción | Descripción | Comando | Ejemplo |
| Importando archivos de la red preexistentes con formato fijo. | Es necesario tener previamente descargado el archivo de la red (bases de datos) en alguno de estos formatos: SIF, GML, XGMML, para que Cytoscape pueda desplegar correctamente la red. | Hacer clic en la pestaña de: File→ Import→ Network from file | Esto permitirá diseñar y agregar atributos específicos a la red de acuerdo con las necesidades que requiera el trabajo. |
| Importando archivos de Excel preexistentes. | Se realiza con tablas de atributos, que son archivos de Excel donde el usuario elige las columnas que representan los nodos y se asignan características a cada uno de los nodos de la red. Este tipo de tablas facilita el análisis de las redes cuando se evalúan diferentes características asociadas. | 1.- Hacer clic en la pestaña de File → Import → Network from file | En la figura se muestra la tabla mínima para construir una red, esta debe contener al menos dos columnas, una llamada SOURCE y otra llamada TARGET para que Cytoscape sea capaz de crear una red con interacciones entre al menos dos nodos. Como resultado se obtiene la red con el formato predeterminado. |
| Importando desde bases de datos públicas | Permite importar redes desde bases de datos públicas. También hay una barra de búsqueda en la parte superior en el panel de control para acceder directamente a las bases de datos | File→ Import→ Network from Public Databases | En la figura se muestra desde el panel de control como importar una red desde una base de datos |
| Creando una red vacía y agregar nodos y bordes manualmente | Se puede crear una red nueva agregando nodos y vértice de forma manual. Puede editar una red existente utilizando el mismo proceso. | Para empezar a construir una red: File → New Network → Empty Para agregar nodos a la red, hacer cliq derecho Add→ Node Para editar los nodos Edit →Edge Edit →Add Edge Edit →Cut Edit→Delete Edit → Undo | En la figura se observa cómo añadir un nodo de forma manual   Para editar cada uno de los nodos de forma manual |
Para información más detallada consulte el manual de Cytoscape

## Extensiones

Por medio del programa Cytoscape es posible descargar extensiones, que son aplicaciones de otros programas o bases de datos que permitien extraer información adicional, ya sea relacionada al tipo de interacción o características de cada nodo dentro de una red. También son útiles para realizar análisis específicos para la interpretación de resultados y encontrar proteínas hub. Cytoscape cuenta con dos extensiones predeterminadas, NDEX y PSICQUIC que a continuación se describen:
* NDEx: Es una plataforma en línea que almacena y gestiona redes biológicas. Cytoscape te permite visualizar, analizar y modificar las redes almacenadas en NDEx desde las herramientas propias disponibles en el programa.
* PSICQUIC: Es una herramienta que permite acceder a datos de interacciones biomoleculares a través de una interfaz estandarizada. Esta extensión reúne información de múltiples bases de datos sobre interacciones entre proteínas, genes y ARN, facilitando la descarga y consulta de datos de manera unificada. Gracias a PSICQUIC, los usuarios de Cytoscape pueden integrar y analizar datos de interacciones biomoleculares de diversas fuentes, simplificando el proceso de obtención y análisis de información relevante para estudios en biología molecular.
Existen una gran diversidad de extensiones dentro para Cytoscape que puedes obtener desde la App Store. La selección de las aplicaciones dependerá del objetivo de cada investigación.

## Otras herramientas para construir redes biológicas

También existen otros programas con los cuales es posible construir redes de interacción biológicas. Algunos de ellos contienen información especializada en un organismo en particular o para algún tipo de interacción específica. A continuación, se proporciona una breve descripción de estas herramientas.
| Herramientas | Descripción | Características principales | Referencias |
| STRING | Recurso que integra datos de fuentes como KEGG y Gene Ontology. | Te proporciona información sobre interacciones proteicas, tanto predichas como con evidencia experimental Permite construir y analizar redes de interacción de proteínas. | (Szklarczyk D. et al., 2019) |
| BioGRID | Base de datos de libre acceso sobre interacciones físicas y genéticas. | Permite al usuario crear gráficos personalizados de proteínas y genes, integrados con el sistema de visualización Osprey, que está vinculado dinámicamente a BioGRID. | (Stark C. et al., 2006) |
| GeneMANIA | Interfaz web para generar hipótesis sobre la función de genes y analizar listas de genes. | Facilita la construcción de redes de interacción de proteínas y genes, y la priorización de genes para ensayos funcionales. | (Warde-Farley D. et al., 2010) |
| IntAct | Base de datos de código abierto para datos de interacción molecular. | Permite construir redes a partir de datos obtenidos de literatura científica o de envíos directos de usuarios. | (European Bioinformatics Institute, 2023). |