Tutorial:Basic Expression Analysis in Cytoscape-Human

From OpenTutorials
Jump to: navigation, search


Slideshow Basic Expression Analysis in Cytoscape (30 min)
Handout Basic_Expression_Analysis_in_Cytoscape-Human.pdf (11 pages)

Tutorial Curators Kristina Hanspers, Alex Pico, Mike Smoot


Cytoscape is an open source software platform for integrating, visualizing, and analyzing measurement data in the context of networks. This tutorial will introduce you to:

  • Combining data from two different sources: experimental data in the form of microarrray expression data and network data in the form of interaction data.
  • Visualizing networks using expression data.
  • Filtering networks based on expression data.

Loading Network

  • Start Cytoscape and load the network File:HumanInteractome subset.sif.
  • Apply the force-directed layout to organize the layout of the nodes. Select the "Layout->Cytoscape Layouts->Force-Directed Layout" menu.
  • The network should now look similar to this:

Interactome subnet.png

Loading expression data

  • Download File:Pellegrini et al Data.txt.zip expression data and unzip it.
  • Using your favorite text editor, open the file Pellegrini_et_al_Data.txt. The first few lines of the file are as follows:
Gene Symbol	Entrez id	Probeset	CREB kd	  control	p value	   fold change	Sign CREB binding
A2M	        2	        217757_at	42.24	  57.45	        0.4	   1.5	        yes
A2ML1	        144568	        1553505_at	67.95	  206.47	0.11	   0.58	
A2ML1	        144568	        1564307_a_at	160.05	  183.44	0.81	   0.95		

You should note the following information about the file:

  1. The first line consists of labels.
  2. All columns are separated by a single tab character.
  3. The first column contains node names, and must match the names of the nodes in your network exactly!
  4. The second column contains Entrez Gene IDs.
  5. The third column contains Affymetrix probe set IDs. This column is optional, and the data is not currently used by Cytoscape, but this column may be useful for analysis in other microarray analysis tools.
  6. The remaining columns contain experimental data; average expression for experimental and control groups, p value and fold change for the comparison, and data on whether or not the gene binds CREB. See the manuscript for details on the data generation.

NOTE: The expression data used in this example has been pre-processed to work with the interaction network used. The data is a composite of data files from Pellegrini et al, BMC Cancer, 2008.

  • Under the File menu, select Import → Attribute from Table (Text/MS Excel).
  • Click "Node" for the type of attribute to import.
  • Select the file Pellegrini_et_al_Data.txt.
  • Click the "Text File Import Options" check box.
  • Make sure the "Tab" check box in the "Delimiter" section is selected and that no other check box under "Delimiter" is selected. The preview should indicate that it is importing multiple columns of data.
  • Click the "Transfer first line as attribute names" check box in the "Attribute Names" section. The preview should now show be using the first row of the input file as column names and the import window should look like the image below.
  • Click the "Import" button to import the attribute data.

LoadExpData.png
Now we will use the Node Attribute Browser to browse through the expression data, as follows.

  • Select a node on the Cytoscape canvas by clicking on it.
  • In the Node Attribute Browser, click the Select Attributes button Select.png, and select the attributes "fold change" and "p value" by left-clicking on them. Right-click to close the menu.
  • Under the Node Attribute Browser, you should see your node listed with their expression values, as shown.

BrowseData.png

Visualizing Expression Data

Probably the most common use of expression data in Cytoscape is to set the visual attributes of the nodes in a network according to expression data. This creates a powerful visualization, portraying functional relation and experimental response at the same time. Here, we will walk through the steps for doing this.

Set the node color

  • Double-Click the Node Color row in the Visual Mapping Browser in the Unused Visual Properties Section.
  • This action will move Node Color to the top of the Visual Mapping Browser.
  • Click the "Please select a value!" cell in the Node Color section.
  • This will produce a drop-down menu of available attribute names. Select "fold change".
  • Click the "Please select a mapping" cell in the Node Color section.
  • This will produce a drop-down menu of available mapping types. Select "Continuous Mapping".
  • This action will produce a basic black to white color gradient.
  • Click on the color gradient to change the colors. This will pop-up a gradient editing dialog.
  • Drag the left-most, red handle along the top of the gradient. Drag it to an Attribute Value of approx. -1.2
  • Drag the white handle to approx 0.5. You can type the Attribute Value in the Handle Settings section to be more precise.
  • You can also change the color of each handle by double-clicking or using the Node Color selector button in the Handle Settings section.
  • This should produce a Red-White-Green Color gradient like the image below, with min and max extremes colored black and blue, respectively.
  • Click 'OK' to save the gradient adjustment dialog and verify that the nodes in the network reflect the new coloring scheme.

Node color gradient.png

Set the default node color

Note that the default node color of pink falls within this spectrum. A useful trick is to choose a color outside this spectrum to distinguish nodes with no defined expression value and those with slight repression.

  • Click the Defaults network icon in the VizMapper panel.
  • Click the Node Color entry and choose a dark gray color.
  • Zoom out on the network view to verify that a few nodes have been colored gray.

Set the node shape

We imported both a fold change value and a p value for the comparison between CREB kd and control cells. We can use the p values to change the shape of the nodes so that measurements we have confidence in appear as squares while potentially bad measurements appear as circles.

  • Double-Click the Node Shape row in the Visual Mapping Browser in the Unused Visual Properties Section.
  • This action will move Node Shape to the top of the Visual Mapping Browser.
  • Click the "Please select a value!" cell in the Node Shape section.
  • This will produce a drop-down menu of available attribute names. Select "p value".
  • Click the "Please select a mapping" cell in the Node Shape section.
  • This will produce a drop-down menu of available mapping types. Select "Continuous Mapping".
  • This will create an empty icon in the "Graphical View" row of the Node Shape section. Click on this icon.
  • This action will pop-up a continuous shape selection dialog.

Node shape editor.png

  • Click the Add button.
  • This action will split the range of values with a slider down the middle with a node shape icon to either side of the slider.
  • Double-Click on the left node icon (a circle).
  • This will pop-up a node shape selection dialog.
  • Choose the Rectangle shape and click the Apply button.
  • The continuous shape selection dialog should now show both a square and a circle node shape icon.
  • Click on the black triangle and move the slider to the left, to slightly lower that 0.05, our threshold for significance.
  • Close the continuous shape selection dialog and verify that some nodes have a square shape and some nodes have a circular shape.

Set the node border

We can use the node border color and style to reflect whether a node has been found to be significantly bound by CREB (ref). This data is already available in the dataset as an attribute.

  • Double-Click the Node Border Color row in the Visual Mapping Browser in the Unused Visual Properties Section.
  • This action will move Node Border Color to the top of the Visual Mapping Browser.
  • Click the "Please select a value!" cell in the Node Border Color section.
  • This will produce a drop-down menu of available attribute names. Select "Sign CREB binding".
  • This will produce a drop-down menu of available mapping types. Select "Discrete Mapping".
  • This will create a new row for the value "yes", which is the only value available for this attribute. Click on the empty cell to the right of "yes", and then click on the square icon that appears.
  • A color chooser will appear. Pick a color that will stand out against the color scheme, for example a bright yellow. The relevant nodes in the network will be outlined in yellow.

Next, we want to also change the border thickness, since the thin yellow border can be hard to see.

  • Double-Click the Node Line Width row in the Visual Mapping Browser in the Unused Visual Properties Section.
  • This action will move Node Line Width to the top of the Visual Mapping Browser.
  • Click the "Please select a value!" cell in the Node Line Width section.
  • This will produce a drop-down menu of available attribute names. Select "Sign CREB binding".
  • This will produce a drop-down menu of available mapping types. Select "Discrete Mapping".
  • This will create a new row for the value "yes", which is the only value available for this attribute. The default node border width of 1.5 will be selected to the right of "yes".
  • Click in the box specifying the width and type 5.
  • Zooming in to part of the network, it now looks like this:

Network part.png

Data analysis features

This section presents a few examples of features in Cytoscape that can be used to further analyze the network and associated data.

First, here is some background on your data. The data is from an experiment in a human myeloid leukemia cell line. The cAMP Response Element Binding Protein, CREB, was knocked down by shRNA and the expression profile of knockdown cells was compared to that of control cells from the same cell line. See Pellegrini et al.

Filter Nodes

It is possible to filter any network in Cytoscape based on either node or edge attributes. Here, we filter the network based on high and low fold change between the two groups.

  • Click the Filters tab in the Control Panel.
  • Click the Attribute/Filter chooser in the Filter Definition and choose "node.fold change".
  • Click the Add button in the Filter Definition section to add the selected attribute to the filter.
  • This action will create a slider for the fold change in the filter.
  • Double-click on the slider to select cutoffs. Set the low bound to 2 and click OK.

Filter-panel.png

  • Now, expand the selection to first neighbors of selected nodes by clicking SelectNodesFirst Neighbors of Selected Nodes.
  • Create a new network by clicking NewNetworkFrom Selected Nodes, All Edges.
  • Apply a force-directed layout to the new network by selecting Layout → Cytoscape Layouts → Force-Directed Layout.
  • Navigate to the Network tab in the Control Panel. Rename the new network by right-clicking on it and selecting Edit Network Title. Type in "upregulated".
  • The new network should now look like this:

Upregulated.png

  • Repeat the Filter for down-regulated genes with fold change under 0.5. Name the second subnetwork "downregulated".
  • The "downregulated" network should look like this:

Downregulated.png

Search for a node

We will now search for the CREB1 (CREB) node in the network.

  • In the toolbar, to the right of the Search box, click the icon for Configure search options'.
  • In the dialog that opens, select the radio button for Nodes and make sure Unique Identifier is selected in the drop-down. Click Apply.
  • In the search field, type in "CREB". In the list of hits that is generated, you will see that there is one node named CREB1, which is an alias name for the CREB transcription factor. Select this node from the list and click Enter.
  • The CREB node will be highlighted in the network.
  • To make it easier to explore the interactions immediately surrounding CREB, we can create a network based on the first degree neighbors of CREB by clicking Select → Nodes → First Neighbors of Selected Nodes.
  • A set of nodes should now be highlighted. Click File → New → Network → From Selected Nodes, All Edges. A new network will be produced.
  • Clean up the network by applying a force-directed layout.
  • The network should now look like this:

CREB-network.png

  • By examining the network, we can see that CREB interacts with both up- and down-regulated nodes. CREB is known to act both as a transcriptional repressor and transcriptional activator. If you search for CREB in the two subnetworks representing all up- and down-regulated nodes respectively, you will see that CREB is present in both networks.

Exploring Nodes

  • In the "HumanInteractome_subset" network, right click on the node CREB1.
  • Select the menu LinkOut → Entrez → Gene.
  • This action will pop-up a browser window and search the Entrez Gene database for CREB.