Find and remove unconnected vertices from the graph.
isolated( graph, undirected = getOption("diffnet.undirected", FALSE), self = getOption("diffnet.self", FALSE) ) drop_isolated( graph, undirected = getOption("diffnet.undirected", FALSE), self = getOption("diffnet.self", FALSE) )
graph | Any class of accepted graph format (see |
---|---|
undirected | Logical scalar. When |
self | Logical scalar. When |
When graph
is an adjacency matrix:
an matrix of size \(n\times 1\) with 1's where a node is isolated
a modified graph excluding isolated vertices.
an matrix of size \(n\times T\) with 1's where a node is isolated
a modified graph excluding isolated vertices.
Other data management functions:
diffnet-class
,
edgelist_to_adjmat()
,
egonet_attrs()
,
survey_to_diffnet()
# Generating random graph set.seed(123) adjmat <- rgraph_er() # Making nodes 1 and 4 isolated adjmat[c(1,4),] <- 0 adjmat[,c(1,4)] <- 0 adjmat#> 10 x 10 sparse Matrix of class "dgCMatrix"#>#> #> 1 . . . . . . . . . . #> 2 . . . . . . . . . . #> 3 . . . . . . 1 . . . #> 4 . . . . . . . . . . #> 5 . . . . . . . . . . #> 6 . . . . . . . . . . #> 7 . . . . . . . . . . #> 8 . . . . . . . . . . #> 9 . . . . . . . . . . #> 10 . . . . . . . . . .# Finding isolated nodes iso <- isolated(adjmat) iso#> [1] TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE TRUE TRUE# Removing isolated nodes drop_isolated(adjmat)#> 1 x 1 sparse Matrix of class "dgCMatrix" #> 3 #> 3 .# Now with a dynamic graph graph <- rgraph_er(n=10, t=3) # Making 1 and 5 isolated graph <- lapply(graph, "[<-", i=c(1,5), j=1:10, value=0) graph <- lapply(graph, "[<-", i=1:10, j=c(1,5), value=0) graph#> $`1` #> 10 x 10 sparse Matrix of class "dgCMatrix"#>#> #> 1 . . . . . . . . . . #> 2 . . . . . . . . . . #> 3 . . . . . . . . . . #> 4 . . . . . . . . . . #> 5 . . . . . . . . . . #> 6 . . . . . . . . . . #> 7 . . . . . . . . . . #> 8 . . . . . . . . . . #> 9 . . . . . . . . . . #> 10 . . . . . . . . . . #> #> $`2` #> 10 x 10 sparse Matrix of class "dgCMatrix"#>#> #> 1 . . . . . . . . . . #> 2 . . . . . . . . . . #> 3 . . . . . . . . . . #> 4 . . . . . . . . . . #> 5 . . . . . . . . . . #> 6 . . . . . . . . . . #> 7 . . . . . . . . . . #> 8 . . . . . . . . . . #> 9 . . . . . . . . . . #> 10 . . . . . . . . . . #> #> $`3` #> 10 x 10 sparse Matrix of class "dgCMatrix"#>#> #> 1 . . . . . . . . . . #> 2 . . . . . . . . . . #> 3 . . . . . . . . . . #> 4 . . . . . . . . . . #> 5 . . . . . . . . . . #> 6 . . . . . . . . . . #> 7 . . 1 . . . . . . . #> 8 . . . . . . . . . . #> 9 . . . . . . . . . . #> 10 . . . . . . . . . . #>isolated(graph)#> [1] TRUE TRUE TRUE TRUE TRUE TRUE FALSE TRUE TRUE TRUEdrop_isolated(graph)#> $`1` #> 1 x 1 sparse Matrix of class "dgCMatrix" #> 7 #> 7 . #> #> $`2` #> 1 x 1 sparse Matrix of class "dgCMatrix" #> 7 #> 7 . #> #> $`3` #> 1 x 1 sparse Matrix of class "dgCMatrix" #> 7 #> 7 . #>