triadCensus             package:GOstats             R Documentation

_T_r_i_a_d _F_u_n_c_t_i_o_n_s

_D_e_s_c_r_i_p_t_i_o_n:

     These functions provide some tools for finding triads in an
     undirected graph. A triad is a clique of size 3. The function
     'triadCensus' returns a list of all triads.

_U_s_a_g_e:

     triadCensus(graph)
     isTriad(x, y, z, elz, ely)
     reduce2Degreek(graph, k)
     enumPairs(iVec)

_A_r_g_u_m_e_n_t_s:

   graph: An instance of the 'graph' class. 

       k: An integer indicating the minimum degree wanted.

       x: A node

       y: A node

       z: A node

     elz: The edgelist for 'z'

     ely: The edgelist for 'y'

    iVec: A vector of unique values

_D_e_t_a_i_l_s:

     'enumPairs' takes a vector as input and returns a list of length
     'choose(length(iVec),2)/2' containing all unordered pairs of
     elements.

     'isTriad' takes three nodes as arguments. It is already known that
     'x' has edges to both 'y' and 'z' and we want to determine whether
     these are reciprocated. This is determined by examining 'elz' for
     both 'x' and 'y' and then examining 'ely' for both 'x' and 'z'. 

     'reduce2Degreek' is a function that takes an undirected graph as
     input and removes all nodes of degree less than 'k'. This process
     is iterated until there are no nodes left (an error is thrown) or
     all nodes remaining have degree at least 'k'. The resultant
     subgraph is returned. It is used here because to be in a triad all
     nodes must have degree 2 or more.

     'triadCensus' makes use of the helper functions described above
     and finds all triads in the graph.

_V_a_l_u_e:

     A list where each element is a triple indicating the members of
     the triad. Order is not important and all triads are reported in
     alphabetic order.

_N_o_t_e:

     See the graph package, RBGL and Rgraphviz for more details and
     alternatives.

_A_u_t_h_o_r(_s):

     R. Gentleman

_E_x_a_m_p_l_e_s:

     ##---- Should be DIRECTLY executable !! ----
     ##-- ==>  Define data, use random,

