CDAPS

Community Detection APplication and Service (CDAPS)

CDAPS performs multiscale community detection and functional enrichment for network analysis through a service-oriented architecture. These features are provided by integrating popular community detection algorithms and enrichment tools. All the algorithms and tools run remotely on a dedicated server.

Currently supported features:

  • Community detection algorithms: Louvain, Infomap, OSLOM, CliXO
  • Functional enrichment tools: g:Profiler, Enrichr, iQuery
_images/f1_app_store.png _images/f3.png

Feature Requests and Reporting Bugs

The CDAPS GitHub issue tracker can be used to report a bug or request a feature.

To Report a bug:

  • Go to https://github.com/cytoscape/cy-community-detection/issues
  • Click on New Issue
  • Write a short description of the issue. It is very helpful to provide a series of steps that can be taken to reproduce the issue.
  • If possible attach a session file (.cys) or example input files.
  • Enter App version, Cytoscape version and operating system.
  • Click on Submit new issue

Cite CDAPS

Manuscript in preparation

Installation

  • Cytoscape minimum version 3.7 is required.

Install Cytoscape

Download and install the latest version of Cytoscape at

Install CyCommunityDetection

  • Open Cytoscape
  • In the main menu select Apps > App Manager
  • In the App Manager select CyCommunityDetection in the list of All Apps and click the Install button.
CyCommunityDetection can also be installed from the Cytoscape App Store at

What’s New

Version 1.10.0

  • Added new menu option App -> Community Detection -> Settings that lets caller easily change CDAPS REST server. UD-1066
  • Added message letting user know using weight column in Community Detection dialog is an advanced parameter. UD-988
  • In Community Detection dialog replaced About button with info icon next to algorithm selection dropdown. UD-987

Bug fixes

  • Fixed bug where changes to properties under Edit -> Properties -> CyCommunityDetection were not being loaded. UD-986

Version 1.0

  • First release

Quick Tutorial

Open a network

To run Community Detection, a network must be loaded in Cytoscape.

From within Cytoscape click on Affinity Purification network on the starter panel:

_images/starterpanel.png

If not displayed, the Starter Panel can be displayed by invoking the menu option View -> Show Starter Panel.

_images/loadstarterpanel.png

Run Community Detection

With the network loaded click on Apps -> Community Detection -> Run Community Detection menu option.

_images/runcommunitydetection.png

The above step will display a dialog seen below.

Select Louvain from algorithm dropdown and click Run button.

_images/communitydetectiondialog.png

A new network/hierarchy should be generated as seen here (The current default layout will be used):

_images/resultinghierarchy.png

Each node in the network/hierarchy above represents a cluster with the members of that cluster set in the CD_MemberList node column

Perform Term Mapping

Using network/hierarchy generated above select a few nodes in the network view and then right click on a selected node to display the submenu and select Apps -> Community Detection -> Run Functional Enrichment as seen here:

_images/term_map_select_nodes.png

The above step will display a dialog seen below:

Select gProfiler from algorithm dropdown and click Run button.

_images/term_map_dialog.png

gProfiler will be run and nodes will be named and colored according to overlap as seen here:

_images/mapped_terms.png

View Interactions

Using network/hierarchy generated above select a single node in the network view and then right click on the selected node to display the submenu and select Apps -> Community Detection -> View Interactions for Selected Node

_images/view_interactions_invoke.png

Invoking this menu option will show all the nodes pertaining to this cluster in the parent network like as seen here:

_images/view_interactions.png

Send terms in cluster to iQuery

Columns

This page describes the columns created by CDAPS in the network and node tables.

Network Columns

  • Columns created in network table when invoking Run Community Detection
_images/networkcolumns.png
  • name - String in format:

    Example:

  • __CD_OriginalNetwork - SUID of parent network. (Bug Saving/reloading a Cytoscape session changes SUID and will cause View Interactions for Selected Node to fail)

  • description - Contains string in this format:

    Example:

  • prov:wasDerivedFrom - Name of parent network

  • prov:wasGeneratedBy - Denotes version of CDAPS and algorithm used in this format:

    Example:

Node Columns

In the node table columns created by CDAPS are prefixed with CD_

  • Columns created in node table when invoking Run Community Detection
_images/cdetectnodecolumns.png
  • CD_MemberList - String of space delimited node names representing members of this cluster
  • CD_MemberList_Size - Size of CD_MemberList
  • CD_MemberList_LogSize - Log of CD_MemberList_Size
  • CD_CommunityName - Name of community set by invocation of Run Functional Enrichment
  • CD_AnnotatedMembers - String of space delimited node names used to set value in CD_CommunityName
  • CD_AnnotatedMembers_Size - Size of CD_AnnotatedMembers
  • CD_AnnotatedMembers_Overlap - CD_AnnotatedMembers_Size divided by CD_MemberList_Size
  • CD_AnnotatedMembers_Pvalue - Pvalue obtained from term mapping algorithm invoked by Run Functional Enrichment
  • CD_Labeled - Boolean denoting if CD_CommunityName was set to a value other then blank or (none)
  • Columns created in node table when invoking Run Functional Enrichment
_images/enrichnodecolumns.png
  • CD_AnnotatedAlgorithm - Algorithm used to set value in CD_CommunityName in format:

    Example:

  • CD_NonAnnotatedMembers - String of space delimited node names NOT used by algorithm to set mapped term in CD_CommunityName

  • CD_AnnotatedMembers_SourceDB Source database used by algorithm to set mapped term in CD_CommunityName

  • CD_AnnotatedMembers_SourceTerm Id of mapped term set in CD_CommunityName