From a graph object of class dgr_graph
, delete an existing edge by
specifying either: (1) a pair of node IDs corresponding to the edge
(keeping into consideration the direction of the edge in a directed graph),
or (2) an edge ID.
delete_edge(graph, from = NULL, to = NULL, id = NULL)
A graph object of class dgr_graph
.
a node ID from which the edge to be removed is outgoing. If an
edge ID is provided to id
, then this argument is ignored. There is
the option to use a node label
value here (and this must
correspondingly also be done for the to
argument) for defining node
connections. Note that this is only possible if all nodes have distinct
label
values set and none exist as an empty string.
a node ID to which the edge to be removed is incoming. If an edge
ID is provided to id
, then this argument is ignored. There is the
option to use a node label
value here (and this must correspondingly
also be for the from
argument) for defining node connections. Note
that this is only possible if all nodes have distinct label
values
set and none exist as an empty string.
an edge ID of the edge to be removed.
A graph object of class dgr_graph
.
Other Edge creation and removal:
add_edge_clone()
,
add_edge_df()
,
add_edges_from_table()
,
add_edges_w_string()
,
add_edge()
,
add_forward_edges_ws()
,
add_reverse_edges_ws()
,
copy_edge_attrs()
,
create_edge_df()
,
delete_edges_ws()
,
delete_loop_edges_ws()
,
drop_edge_attrs()
,
edge_data()
,
join_edge_attrs()
,
mutate_edge_attrs_ws()
,
mutate_edge_attrs()
,
recode_edge_attrs()
,
rename_edge_attrs()
,
rescale_edge_attrs()
,
rev_edge_dir_ws()
,
rev_edge_dir()
,
set_edge_attr_to_display()
,
set_edge_attrs_ws()
,
set_edge_attrs()
# NOT RUN {
# Create a graph with 2 nodes
graph <-
create_graph() %>%
add_n_nodes(n = 2)
# Add an edge
graph <-
graph %>%
add_edge(
from = 1,
to = 2)
# Delete the edge
graph <-
graph %>%
delete_edge(
from = 1,
to = 2)
# Get the count of edges in the graph
graph %>% count_edges()
# Create an undirected graph with
# 2 nodes and an edge
graph_undirected <-
create_graph(directed = FALSE) %>%
add_n_nodes(n = 2) %>%
add_edge(
from = 1,
to = 2)
# Delete the edge; the order of node ID
# values provided in `from` and `to`
# don't matter for the undirected case
graph_undirected %>%
delete_edge(
from = 2,
to = 1) %>%
count_edges()
# The undirected graph has a single
# edge with ID `1`; it can be
# deleted by specifying `id`
graph_undirected %>%
delete_edge(id = 1) %>%
count_edges()
# Create a directed graph with 2
# labeled nodes and an edge
graph_labeled_nodes <-
create_graph() %>%
add_n_nodes(
n = 2,
label = c("one", "two")) %>%
add_edge(
from = "one",
to = "two")
# Delete the edge using the node
# labels in `from` and `to`; this
# is analogous to creating the
# edge using node labels
graph_labeled_nodes %>%
delete_edge(
from = "one",
to = "two") %>%
count_edges()
# }
Run the code above in your browser using DataLab