[BioC] how to store multiple relationships between nodes in graphNEL?

Seth Falcon sfalcon at fhcrc.org
Wed Jul 25 00:48:41 CEST 2007


Paul Shannon <pshannon at systemsbiology.org> writes:
> Yep, 'method' is ambiguous.  Sorry.  I meant to say:
>
>   1) Not infrequently a protein-protein interaction is identified
>      by multiple experimental methods which give it extra credibility.
>
>   2) A Pubmed ID is often included in archived interaction data,
> providing a reference
>      (a paper) for each underlying experimental method.  In
> cytoscape, we often make these clickable
>      links, so you can examine the abstract, and decide whether you
>      want to include the interaction in your network.

So to expand on my suggested workaround:

   Define an edge attribute for each experimental method: m1, m2, m3

   Have the default for each be: 

      list(exists=FALSE, PMIDS=character(0), score=as.numeric(NA))

   Assume that if an edge is present that means one of the attributes
   has its exists component set to TRUE, otherwise the edge would not
   be there.


> be worth considering: use a list of S4 objects, or create a new
> multiGraph class.  When I have a little time, I will look into
> these.

It seems to me that what you really want is a nice way to represent
multigraphs (one node set with a set of edge sets).

> By the way, the graph package is a delight, as is the way it meshes
> with RBGL.
>
> For example, I just figured out how easy it is to find putative
> relationships between
> previously unconnected nodes, using a reference graph (in my case,
> DIP), the graph package,
> and RBGL:
>
>   subGraph(sp.between (g, node1, node2)[[1]]$path, g)
>
> That's lovely!

Excellent :-)  Glad to hear that.

+ seth

-- 
Seth Falcon | Computational Biology | Fred Hutchinson Cancer Research Center
http://bioconductor.org



More information about the Bioconductor mailing list