neighborhood             package:igraph             R Documentation

_N_e_i_g_h_b_o_r_h_o_o_d _o_f _g_r_a_p_h _v_e_r_t_i_c_e_s

_D_e_s_c_r_i_p_t_i_o_n:

     These functions find the vertices not farther than a given limit
     from another fixed vertex, these are called the neighborhood of
     the vertex.

_U_s_a_g_e:

     neighborhood.size(graph, order, nodes=V(graph), mode=c("all", "out", "in"))
     neighborhood(graph, order, nodes=V(graph), mode=c("all", "out", "in"))
     graph.neighborhood(graph, order, nodes=V(graph), mode=c("all", "out", "in"))
     connect.neighborhood(graph, order, mode=c("all", "out", "in", "total"))

_A_r_g_u_m_e_n_t_s:

   graph: The input graph.

   order: Integer giving the order of the neighborhood.

   nodes: The vertices for which the calculation is performed.

    mode: Character constatnt, it specifies how to use the direction of
          the edges if a directed graph is analyzed. For 'out' only the
          outgoing edges are followed, so all vertices reachable from
          the source vertex in at most 'order' steps are counted. For
          '"in"' all vertices from which the source vertex is reachable
          in at most 'order' steps are counted. '"all"' ignores the
          direction of the edges. This argument is ignored for
          undirected graphs.

_D_e_t_a_i_l_s:

     The neighborhood of a given order 'o' of a vertex 'v' includes all
     vertices which are closer to 'v' than the order. Ie. order 0 is
     always 'v' itself, order 1 is 'v' plus its immediate neighbors,
     order 2 is order 1 plus the immediate neighbors of the vertices in
     order 1, etc.

     'neighborhood.size' calculates the size of the neighborhoods for
     the given vertices with the given order.

     'neighborhood' calculates the neighborhoods of the given vertices
     with the given order parameter.

     'graph.neighborhood' is creates (sub)graphs from all neighborhoods
     of the given vertices with the given order parameter. This
     function preserves the vertex, edge and graph attributes.

     'connect.neighborhood' creates a new graph by connecting each
     vertex to all other vertices in its neighborhood.

_V_a_l_u_e:

     'neighborhood.size' returns with an integer vector.

     'neighborhood' returns with a list of integer vectors.

     'graph.neighborhood' returns with a list of graphs.

     'connect.neighborhood' returns with a new graph object.

_A_u_t_h_o_r(_s):

     Gabor Csardi csardi@rmki.kfki.hu, the first version was done by
     Vincent Matossian

_E_x_a_m_p_l_e_s:

     g <- graph.ring(10)
     neighborhood.size(g, 0, 1:3)
     neighborhood.size(g, 1, 1:3)
     neighborhood.size(g, 2, 1:3)
     neighborhood(g, 0, 1:3)
     neighborhood(g, 1, 1:3)
     neighborhood(g, 2, 1:3)

     # attributes are preserved
     V(g)$name <- c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j")
     graph.neighborhood(g, 2, 1:3)

     # connecting to the neighborhood
     g <- graph.ring(10)
     g <- connect.neighborhood(g, 2)

