Multiple indices
When using multiple indices within the bracket, all of them
are evaluated independently, and then the results are concatenated
using the c()
function. E.g. E(g)[1, 2, inc(1)]
is equivalent to c(E(g)[1], E(g)[2], E(g)[inc(1)])
.Index types
Edge sequences can be indexed with positive numeric vectors,
negative numeric vectors, logical vectors, character vectors:
- When indexed with positive numeric vectors, the edges at the
given positions in the sequence are selected. This is the same as
indexing a regular R atomic vector with positive numeric vectors.
- When indexed with negative numeric vectors, the edges at the
given positions in the sequence are omitted. Again, this is the same
as indexing a regular R atomic vector.
- When indexed with a logical vector, the lengths of the edge
sequence and the index must match, and the edges for which the
index is
TRUE
are selected. - Named graphs can be indexed with character vectors,
to select edges with the given names. Note that a graph may
have edge names and vertex names, and both can be used to select
edges. Edge names are simply used as names of the nuumeric
edge id vector. Vertex names effectively only work in graphs without
multiple edges, and must be separated with a
|
bar character
to select an edges that incident to the two given vertices. See
examples below.
Edge attributes
When indexing edge sequences, edge attributes can be refered
to simply by using their names. E.g. if a graph has a weight
edge
attribute, then E(G)[weight > 1]
selects all edges with a larger
than one weight. See more examples below.