Nothing
context("Degree function")
################################################################################
# Static graphs
################################################################################
# Directed graph ---------------------------------------------------------------
graph <- rbind(
c(0,1,0),
c(1,0,0),
c(1,1,0)
)
dimnames(graph) <- list(letters[1:3],letters[1:3])
EL_digraph <- list(
`matrix` = graph,
`dgCMatrix` = as(graph, "dgCMatrix"))
oldopt <- getOption("diffnet.undirected")
options(diffnet.undirected=FALSE)
# Function to create diffnet_degSeq, matrix
asdegseq <- function(x) {
structure(cbind(x), class=c("diffnet_degSeq", "matrix"))
}
for (i in names(EL_digraph)) {
test_that(paste0("indegree of directed graph - ",i), {
expect_equivalent(dgr(EL_digraph[[i]], "indegree"), asdegseq(c(2,2,0)))
expect_equivalent(dgr(EL_digraph[[i]], "outdegree"), asdegseq(c(1,1,2)))
expect_equivalent(dgr(EL_digraph[[i]], "degree"), asdegseq(c(3,3,2)))
}
)
}
options(diffnet.undirected=TRUE)
# Undirected graph -------------------------------------------------------------
graph <- rbind(
c(0,1,1),
c(1,0,1),
c(1,1,0)
)
dimnames(graph) <- list(letters[1:3],letters[1:3])
EL_digraph <- list(`matrix` = graph, `dgCMatrix` = as(graph, "dgCMatrix"))
for (i in names(EL_digraph)) {
test_that(paste0("Degree of undirected graph - ",i), {
expect_equivalent(dgr(EL_digraph[[i]], "indegree"), asdegseq(c(2,2,2)))
expect_equivalent(dgr(EL_digraph[[i]], "outdegree"), asdegseq(c(2,2,2)))
expect_equivalent(dgr(EL_digraph[[i]], "degree"), asdegseq(c(2,2,2)))
}
)
}
options(diffnet.undirected=oldopt)
################################################################################
# Dynamic graphs
################################################################################
# Directed graph ---------------------------------------------------------------
graph <- rbind(
c(0,1,0),
c(1,0,0),
c(1,1,0)
)
dimnames(graph) <- list(letters[1:3],letters[1:3])
listgraph <- as(graph, "dgCMatrix")
listgraph <- list(`2001`=listgraph, `2002`=listgraph, `2003`=listgraph)
arraygraph <- array(graph, dim = c(dim(graph), 3),
dimnames=list(rownames(graph), colnames(graph), 2001:2003))
toa <- c(2001L,2001L, 2003L)
EL_digraph <- list(`array` = arraygraph, `list` = listgraph,
`diffnet`=as_diffnet(listgraph, toa))
oldopt <- getOption("diffnet.undirected")
options(diffnet.undirected=FALSE)
# Comparing outputs for different classes
test_that("Either as an array or as a list, dgr should work (directed)", {
expect_identical(dgr(EL_digraph[[1]]), dgr(EL_digraph[[2]]))
})
options(diffnet.undirected=oldopt)
options(diffnet.undirected=TRUE)
# Undirected graph -------------------------------------------------------------
graph <- rbind(
c(0,1,1),
c(1,0,1),
c(1,1,0)
)
dimnames(graph) <- list(letters[1:3],letters[1:3])
toa <- c(2001L,2001L, 2003L)
listgraph <- as(graph, "dgCMatrix")
listgraph <- list(`2001`=listgraph, `2002`=listgraph, `2003`=listgraph)
arraygraph <- array(graph, dim = c(dim(graph), 3),
dimnames=list(rownames(graph), colnames(graph), 2001:2003))
EL_digraph <- list(`array` = arraygraph, `list` = listgraph,
`diffnet`=as_diffnet(listgraph, toa))
# Comparing outputs for different classes
test_that("Either as an array or as a list, dgr should work (directed)", {
expect_identical(dgr(EL_digraph[[1]]), dgr(EL_digraph[[2]]))
})
options(diffnet.undirected=oldopt)
# igraph and statnet -----------------------------------------------------------
test_that("dgr on igraph and statnet", {
set.seed(1313)
g <- rgraph_ba(t=9, m=2, self=FALSE)
ans0 <- dgr(g)
ans1 <- suppressWarnings(dgr(igraph::graph_from_adjacency_matrix(g)))
ans2 <- dgr(network::network(as.matrix(g)))
expect_equal(ans0,ans1)
expect_equal(ans0,ans2)
expect_silent(plot(ans0))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.