simLL                package:GOstats                R Documentation

_F_u_n_c_t_i_o_n_s _t_o _c_o_m_p_u_t_e _s_i_m_i_l_a_r_i_t_i_e_s _b_e_t_w_e_e_n _G_O _g_r_a_p_h_s _a_n_d _a_l_s_o
_b_e_t_w_e_e_n _E_n_t_r_e_z _G_e_n_e _I_D_s _b_a_s_e_d _o_n _t_h_e_i_r _i_n_d_u_c_e_d _G_O _g_r_a_p_h_s.

_D_e_s_c_r_i_p_t_i_o_n:

     Both 'simUI' and 'simLP' compute a similarity measure between two
     GO graphs. For 'simLL', first the induced GO graph for each of its
     arguments is found and then these are passed to one of 'simUI' or
     'simLP'.

_U_s_a_g_e:

     simLL(ll1, ll2, Ontology = "MF", measure = "LP", dropCodes = NULL,
           mapfun = NULL, chip = NULL)
     simUI(g1, g2)
     simLP(g1, g2)

_A_r_g_u_m_e_n_t_s:

     ll1: A Entrez Gene ID as a character vector. 

     ll2: A Entrez Gene ID as a character vector.

Ontology: Which ontology to use ("MF", "BP", "CC"). 

 measure: Which measure to use ("LP", "UI"). 

dropCodes: A set of evidence codes to be ignored in constructing the
          induced GO graphs. 

  mapfun: A function taking a character vector of Entrez Gene IDs as
          its only argument and returning a list of "GO lists" matching
          the structure of the lists in the GO maps of annotation data
          packages. The function should behave similarly to 'mget(x,
          eg2gomap, ifnotfound=NA)', that is, 'NA' should be returned
          if a specified Entrez ID has no GO mapping.  See details for
          the interaction of 'mapfun' and 'chip'.

    chip: The name of a DB-based annotation data package (the name will
          end in ".db").  This package will be used to generate an
          Entrez ID to GO ID mapping instead of 'mapfun'.

      g1: An instance of the 'graph' class.

      g2: An instance of the 'graph' class.

_D_e_t_a_i_l_s:

     For each of 'll1' and 'll2' the set of most specific GO terms
     within the ontology specified ('Ontology') that are not based on
     any excluded evidence code ('dropCodes') are found.  The mapping
     is achieved in one of three ways:

        1.  If 'mapfun' is provided, it will be used to perform the
           needed lookups.  In this case, 'chip' will be ignored.

        2.  If 'chip' is provided and 'mapfun=NULL', then the needed
           lookups will be done based on the Entrez to GO mappings
           encapsulated in the specified annotation data package.  This
           is the recommended usage.

        3.  If 'mapfun' and 'chip' are 'NULL' or missing, then the
           function will attempt to load the GO package (the
           environment-based package, distinct from GO.db).  This
           package contains a legacy environment mapping Entrez IDs to
           GO IDs.  If the GO package is not available, an error will
           be raised. Omitting both 'mapfun' and 'chip' is not
           recommended as it is not compatible with the DB-based
           annotation data packages.

     Next, the induced GO graphs are computed.

     Finally these graphs are passed to one of 'simUI', (union
     intersection), or 'simLP' (longest path). For 'simUI' the distance
     is the size of the intersection of the node sets divided by the
     size of the union of the node sets. Large values indicate more
     similarity. These similarities are between 0 and 1.

     For 'simLP' the length of the longest path in the intersection
     graph of the two supplied graph. Again, large values indicate more
     similarity. Similarities are between 0 and the maximum leaf depth
     of the graph for the specified ontology.

_V_a_l_u_e:

     A list with: 

    sim : The numeric similarity measure.

 measure: Which measure was used.

      g1: The graph induced by 'll1'.

      g2: The graph induced by 'll2'.


     If one of the supplied Gene IDs does not have any GO terms
     associated with it, in the selected ontology and with the selected
     evidence codes then 'NA' is returned.

_A_u_t_h_o_r(_s):

     R. Gentleman

_S_e_e _A_l_s_o:

     'makeGOGraph'

_E_x_a_m_p_l_e_s:

       library("hgu95av2.db")
       eg1 = c("9184", "3547")

       bb = simLL(eg1[1], eg1[2], "BP", chip="hgu95av2.db")

