Skip to contents

The edges in an edge list can have ID numbers. This functions adds a column of edge ID numbers.

Usage

add_edge_ids(edge_list, edge_id = "edge_id")

Arguments

edge_list

the edge list to which edge ID numbers are to be added

edge_id

the name of the edge ID column in the outgoing edge list. (Default is "edge_id".)

Value

edge_list with an added column containing the edge ID numbers.

Examples

library(tidyr)
#> 
#> Attaching package: ‘tidyr’
#> The following object is masked from ‘package:testthat’:
#> 
#>     matches
library(matsbyname)
sutmats <- UKEnergy2000mats %>% spread(key = matrix.name, value = matrix)
# Suppress adding edge IDs
elDF <- edge_list(sutmats, edge_id = NULL)$`Edge list`[[1]]
add_node_ids(elDF)
#>                 From                To Value        Product From_node_id.x
#> 1  Resources - Crude        Oil fields 50000          Crude              0
#> 2        Crude dist.       Crude dist.   500  Crude - Dist.              1
#> 3        Crude dist.    Oil refineries 47000  Crude - Dist.              1
#> 4         Oil fields       Crude dist. 47500 Crude - Fields              2
#> 5         Oil fields        Oil fields  2500 Crude - Fields              2
#> 6     Oil refineries      Diesel dist. 15500         Diesel              3
#> 7     Oil refineries    Oil refineries  5000         Diesel              3
#> 8       Diesel dist.       Crude dist.    25 Diesel - Dist.              4
#> 9       Diesel dist.      Diesel dist.   350 Diesel - Dist.              4
#> 10      Diesel dist. Gas wells & proc.    50 Diesel - Dist.              4
#> 11      Diesel dist.          NG dist.    25 Diesel - Dist.              4
#> 12      Diesel dist.        Oil fields    50 Diesel - Dist.              4
#> 13      Diesel dist.      Petrol dist.   250 Diesel - Dist.              4
#> 14      Diesel dist.         Transport 14750 Diesel - Dist.              4
#> 15      Power plants       Elect. grid  6400          Elect              5
#> 16       Elect. grid       Crude dist.    25   Elect - Grid              6
#> 17       Elect. grid Gas wells & proc.    25   Elect - Grid              6
#> 18       Elect. grid          NG dist.    25   Elect - Grid              6
#> 19       Elect. grid        Oil fields    25   Elect - Grid              6
#> 20       Elect. grid    Oil refineries    75   Elect - Grid              6
#> 21       Elect. grid      Power plants   100   Elect - Grid              6
#> 22       Elect. grid       Residential  6000   Elect - Grid              6
#> 23    Resources - NG Gas wells & proc. 43000             NG              7
#> 24          NG dist.      Power plants 16000     NG - Dist.              8
#> 25          NG dist.       Residential 25000     NG - Dist.              8
#> 26 Gas wells & proc. Gas wells & proc.  2000     NG - Wells              9
#> 27 Gas wells & proc.          NG dist. 41000     NG - Wells              9
#> 28    Oil refineries      Petrol dist. 26500         Petrol              3
#> 29      Petrol dist.      Petrol dist.   500 Petrol - Dist.             10
#> 30      Petrol dist.         Transport 26000 Petrol - Dist.             10
#> 31       Crude dist.             Waste   550          Waste              1
#> 32      Diesel dist.             Waste   350          Waste              4
#> 33       Elect. grid             Waste   125          Waste              6
#> 34 Gas wells & proc.             Waste  2075          Waste              9
#> 35          NG dist.             Waste    50          Waste              8
#> 36        Oil fields             Waste  2575          Waste              2
#> 37    Oil refineries             Waste  5075          Waste              3
#> 38      Petrol dist.             Waste   750          Waste             10
#> 39      Power plants             Waste  9700          Waste              5
#>    To_node_id.x From_node_id.y To_node_id.y
#> 1             2              0            2
#> 2             1              1            1
#> 3             3              1            3
#> 4             1              2            1
#> 5             2              2            2
#> 6             4              3            4
#> 7             3              3            3
#> 8             1              4            1
#> 9             4              4            4
#> 10            9              4            9
#> 11            8              4            8
#> 12            2              4            2
#> 13           10              4           10
#> 14           11              4           11
#> 15            6              5            6
#> 16            1              6            1
#> 17            9              6            9
#> 18            8              6            8
#> 19            2              6            2
#> 20            3              6            3
#> 21            5              6            5
#> 22           12              6           12
#> 23            9              7            9
#> 24            5              8            5
#> 25           12              8           12
#> 26            9              9            9
#> 27            8              9            8
#> 28           10              3           10
#> 29           10             10           10
#> 30           11             10           11
#> 31           13              1           13
#> 32           13              4           13
#> 33           13              6           13
#> 34           13              9           13
#> 35           13              8           13
#> 36           13              2           13
#> 37           13              3           13
#> 38           13             10           13
#> 39           13              5           13