R Under development (unstable) (2025-04-26 r88181 ucrt) -- "Unsuffered Consequences" Copyright (C) 2025 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > # tests for temporal degree functions > library(tsna) Loading required package: network 'network' 1.19.0 (2024-12-08), part of the Statnet Project * 'news(package="network")' for changes since last version * 'citation("network")' for citation information * 'https://statnet.org' for help, support, and other information Loading required package: networkDynamic 'networkDynamic' 0.11.5 (2024-11-21), part of the Statnet Project * 'news(package="networkDynamic")' for changes since last version * 'citation("networkDynamic")' for citation information * 'https://statnet.org' for help, support, and other information > library(testthat) > library(sna) Loading required package: statnet.common Attaching package: 'statnet.common' The following objects are masked from 'package:base': attr, order sna: Tools for Social Network Analysis Version 2.8 created on 2024-09-07. copyright (c) 2005, Carter T. Butts, University of California-Irvine For citation information, type citation("sna"). Type help(package="sna") to get started. > > data(windsurfers) > tDegree(windsurfers) Time Series: Start = 0 End = 31 Frequency = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 6 3 0 4 4 3 1 3 3 0 3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1 6 7 2 NA 3 NA NA NA NA 0 NA 4 3 4 4 0 1 6 3 5 NA NA NA NA NA 2 3 NA 3 4 NA NA 0 NA NA NA 0 6 NA NA 6 NA NA NA NA NA 5 0 6 5 5 3 5 NA 0 NA NA NA 0 NA NA 3 6 2 0 NA NA NA 2 NA NA NA 6 6 2 6 6 4 4 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA 2 2 NA 5 0 3 NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA 6 9 7 4 2 NA 7 NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA 7 8 12 NA 6 3 10 NA 5 NA NA NA NA NA NA NA 2 NA NA 0 NA NA NA NA NA NA 8 6 NA 6 NA NA 0 NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 9 11 8 NA 5 NA NA NA NA NA NA NA 12 3 NA 11 5 NA NA NA NA NA NA NA NA NA 10 10 16 1 10 8 8 NA NA NA 7 NA 0 NA 4 NA NA 0 NA NA NA 2 NA NA 0 NA 11 9 NA 4 3 NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA NA NA 12 4 NA 2 1 NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA 13 7 NA 0 5 NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA 14 2 NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 15 5 NA NA NA NA NA NA NA NA NA NA NA NA 1 NA 0 NA NA NA NA NA NA NA NA NA 16 NA NA NA 5 2 NA NA NA NA NA NA 11 4 6 NA 0 0 NA NA NA NA NA 12 NA 0 17 8 NA NA 9 NA NA NA NA NA NA NA 0 3 5 NA NA 4 NA NA NA 0 NA 6 NA NA 18 2 0 0 NA NA NA NA NA NA NA NA 3 NA NA 3 0 NA NA NA NA NA NA NA 0 NA 19 7 0 3 5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 20 7 8 3 6 NA NA 3 NA NA NA NA NA NA NA NA 3 7 NA NA NA NA NA NA NA NA 21 8 NA NA 6 NA NA 5 NA NA NA 8 NA NA 8 10 0 NA NA NA NA NA NA NA NA NA 22 4 NA NA 2 NA NA NA NA NA NA NA NA 0 0 NA 0 NA NA NA NA NA NA NA NA NA 23 14 10 10 8 NA 11 NA NA NA NA NA NA NA NA NA 0 0 NA NA NA NA NA NA NA NA 24 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 25 NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA 1 NA NA NA NA NA NA NA NA NA 26 5 NA 1 3 NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA 27 NA NA 0 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 28 5 NA NA 5 NA NA NA NA NA NA NA NA NA NA 0 6 NA 1 NA NA NA NA NA NA NA 29 4 1 1 0 NA NA NA NA NA NA NA NA NA NA NA 0 4 NA NA NA NA NA NA NA NA 30 6 10 4 8 NA 6 NA NA NA NA NA 0 7 6 5 6 NA NA NA NA 3 4 8 6 8 31 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2 3 3 8 1 3 7 2 3 0 0 3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA NA NA 3 NA 4 NA NA 7 NA NA 6 0 1 0 3 0 NA NA NA NA NA NA NA NA 4 NA NA NA 0 NA NA NA NA NA NA NA 2 NA NA NA 0 2 2 2 0 0 2 NA NA NA 5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3 1 NA 6 NA NA NA NA NA NA NA NA NA NA NA NA NA 3 3 NA NA NA NA NA NA NA NA NA 6 7 NA NA NA 6 2 NA NA NA NA NA NA NA NA 5 NA NA NA NA NA NA NA NA 2 NA 0 8 NA NA NA NA 4 NA NA NA NA NA NA NA NA 3 3 NA NA NA NA NA NA NA 0 NA NA 9 8 10 10 NA NA NA NA NA NA NA NA 10 NA NA NA 6 NA NA 9 11 NA NA NA NA NA 10 4 6 6 0 NA NA NA NA NA 6 NA 5 NA NA 10 NA NA 0 8 2 1 NA NA NA NA 11 1 NA NA NA NA NA NA NA NA NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA 12 0 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 13 NA NA NA NA NA NA NA NA NA NA NA NA 0 4 2 NA NA NA NA NA NA NA NA NA 0 14 NA NA NA 0 1 NA NA NA NA NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA 15 NA NA NA 1 NA 0 NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA 16 3 11 7 NA NA NA NA NA NA NA NA 5 NA 1 NA NA NA NA 5 NA NA NA NA 0 NA 17 NA 5 5 5 NA NA NA NA NA NA NA 4 NA NA NA NA NA NA 4 NA 2 NA NA NA NA 18 NA NA NA 1 NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA 19 NA NA NA 5 NA NA NA NA NA NA NA NA NA 5 6 NA NA NA NA NA NA NA NA NA NA 20 NA NA NA 8 NA 0 NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA 0 NA NA 21 NA NA NA 5 NA NA NA NA NA 8 NA NA NA NA NA 0 NA NA NA NA NA NA 2 NA NA 22 NA NA NA 4 NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 23 NA 5 5 10 NA NA NA NA NA NA NA 5 NA NA NA 6 0 NA 8 NA NA NA 3 NA NA 24 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 25 NA NA NA NA NA NA NA NA NA NA NA NA NA 1 1 3 NA NA NA NA NA NA 0 NA NA 26 NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA 0 NA NA NA NA NA NA NA NA NA 27 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 28 NA NA NA NA NA NA NA NA NA NA NA NA NA 5 NA NA NA NA NA NA NA NA NA NA NA 29 NA NA NA NA 0 NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA 30 NA NA NA NA NA NA NA NA NA NA NA 7 3 NA NA NA NA 4 4 NA NA NA 0 NA NA 31 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 6 5 3 5 3 5 2 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 7 3 NA NA NA 0 NA 5 2 6 1 5 1 NA NA NA NA NA NA NA NA NA NA NA NA NA 8 NA NA NA NA NA NA NA NA NA 0 0 NA 4 4 NA NA NA NA NA NA NA NA NA NA NA 9 NA NA NA NA NA NA NA NA 5 NA NA NA NA NA 5 5 3 13 10 8 6 7 11 NA NA 10 NA 1 8 NA NA NA NA NA NA 0 NA 1 NA NA 2 6 4 2 7 0 NA NA NA 10 4 11 NA NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA 12 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA 3 NA 13 0 NA NA NA NA NA NA NA 6 4 NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA 14 NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA 0 NA NA NA NA 4 NA 15 NA NA NA NA NA NA NA NA NA 2 NA NA NA 0 NA NA NA NA NA NA NA NA NA 3 NA 16 NA NA NA NA NA 2 NA NA 6 NA NA NA NA NA NA NA 10 NA NA NA NA NA NA 6 NA 17 NA 5 NA NA NA NA NA NA 6 NA NA NA NA NA NA NA 3 NA NA 1 5 NA NA 9 NA 18 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA NA NA NA NA 19 NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 7 NA 20 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 7 NA 21 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 6 NA NA NA NA NA NA NA 7 NA 22 NA NA NA NA NA NA NA 3 NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA NA 23 NA 14 NA NA NA NA NA 5 8 NA NA NA NA NA 4 12 NA NA 5 6 NA NA NA 14 NA 24 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 25 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA 6 NA 26 4 NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 27 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA 28 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1 NA NA NA 6 NA 29 0 NA 0 NA NA NA NA NA NA NA NA NA 4 NA NA NA NA NA NA NA NA NA NA NA NA 30 0 NA NA NA NA NA NA 0 NA NA NA NA NA NA 1 0 9 11 6 NA NA NA NA 8 0 31 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 6 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 7 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 9 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 10 3 4 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 11 NA NA 2 2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 12 NA NA NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 13 NA NA 2 NA NA 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 14 NA NA 0 NA NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA 15 0 NA NA NA NA NA 0 2 NA NA NA NA NA NA NA NA NA NA NA NA 16 NA 7 NA NA NA NA NA NA 0 7 0 NA NA NA NA NA NA NA NA NA 17 NA NA NA NA NA NA NA NA NA 5 NA NA NA NA NA NA NA NA NA NA 18 NA NA NA NA NA NA NA NA NA NA NA 1 3 NA NA NA NA NA NA NA 19 NA NA NA NA 4 NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA 20 NA NA NA NA NA 3 NA NA NA NA NA NA NA 7 0 NA NA NA NA NA 21 NA NA NA NA NA NA NA NA 6 NA NA NA NA NA NA 1 NA NA NA NA 22 NA NA NA NA NA NA NA NA 0 NA NA NA NA NA NA NA NA NA NA NA 23 NA NA 4 NA NA NA NA NA 4 NA NA 2 NA 11 NA NA 2 NA NA NA 24 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 25 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 26 NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 NA NA 27 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 28 NA NA NA 5 NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA 29 NA NA NA NA NA NA NA 4 NA 4 NA NA NA NA NA NA NA NA 0 NA 30 NA NA NA 3 NA NA NA NA NA NA NA 1 NA 9 NA NA 1 NA NA 4 31 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA > data(McFarland_cls33_10_16_96) > tDegree(cls33_10_16_96) Time Series: Start = 0 End = 49 Frequency = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 2 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 3 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 6 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 18 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 21 1 1 1 1 1 1 1 1 1 1 1 1 1 19 1 1 1 1 1 1 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 24 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 30 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 33 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 35 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 39 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 43 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 44 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 49 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA > > library(networkDynamicData) > data(concurrencyComparisonNets) > > # alternate version using sna's degree function for comparison testing > require(sna) > tSnaDegree<-function(nd,start, end, time.interval=1,cmode=c('freeman','indegree','outdegree')){ + if(missing(start) | missing(end)){ + times <- get.change.times(nd) + if (length(times) == 0) { + warning("network does not appear to have any dynamic information. Using start=0 end=1") + start = 0 + end = 0 + } + times[times == Inf] <- NA + times[times == -Inf] <- NA + start = min(times, na.rm = T) + end = max(times, na.rm = T) + } + + # figure out the times where we will do evaluations + times<-seq(from = start, to=end,by = time.interval) + + # figure out gmode + if(is.directed(nd)){ + gmode<-'digraph' + } else { + gmode<-'graph' + } + + cmode<-match.arg(cmode) + + # allocate a matrix to hold the degrees of each vertex at each evaluation time + degrees<-matrix(NA,nrow = network.size(nd),ncol=length(times),dimnames = list(paste('v',seq_len(network.size(nd)),sep='')),times) + for (i in seq_len(length(times))){ + at<-times[i] + slice<-network.extract(nd,at=at) + vids<-which(is.active(nd,at=at,v = seq_len(network.size(nd)))) + degreesAt<-degree(as.matrix(slice),gmode=gmode,diag=has.loops(nd),cmode=cmode) + # deal with case of no active vertices where sapply returns list() + if (!is.list(degreesAt)){ + degrees[vids,i]<-degreesAt + } + + } + # transpose to match new orientation and change class to ts + degrees<- ts(t(degrees), start = start, end = times[length(times)], + deltat = time.interval) + return(degrees) + } > > # check class of returned object > expect_true(is.ts(tDegree(windsurfers))) > > # comparison with vertex dynamics > expect_equal(tDegree(windsurfers),tSnaDegree(windsurfers),check.attributes=FALSE) > > # comparison with directed network > expect_equal(tDegree(cls33_10_16_96),tSnaDegree(cls33_10_16_96),check.attributes=FALSE) > > expect_equal(tDegree(cls33_10_16_96,cmode='indegree'),tSnaDegree(cls33_10_16_96,cmode='indegree'),check.attributes=FALSE) > expect_equal(tDegree(cls33_10_16_96,cmode='outdegree'),tSnaDegree(cls33_10_16_96,cmode='outdegree'),check.attributes=FALSE) > > # comparison with subset of undirected network > expect_equal(tDegree(base,start=0,end=103,time.interval = 10),tSnaDegree(base,start=0,end=103,time.interval = 10),check.attributes=FALSE) > > # comparison with loops > loopy<-network.initialize(5,loops = TRUE) > add.edges.active(loopy,1,1,onset=0,terminus=1) > add.edges.active(loopy,2,3,onset=0,terminus=1) > expect_equal(tDegree(loopy),tSnaDegree(loopy),check.attributes=FALSE) > > # comparison with undeclared loops > loopy2<-network.initialize(5,loops = FALSE) > add.edges.active(loopy2,1,1,onset=0,terminus=1) > add.edges.active(loopy2,2,3,onset=0,terminus=1) > # this gives error because sna version doesn't know to calculate the diagonal > #expect_equal(tDegree(loopy2),tSnaDegree(loopy2),info = 'network with undeclared loops',check.attributes=FALSE) > > > # evaluation on a resonably sized network using start end and time interval > degs<-tDegree(base,start = 0,end=102,time.interval = 10) > expect_equal(nrow(degs),11) > expect_equal(ncol(degs),network.size(base)) > > # check labeling > expect_equal(colnames(degs),as.character(1:1000)) > > # check results close to expected value for the network > expect_equal(mean(colMeans(degs)),0.7609091) > > > > proc.time() user system elapsed 8.64 1.20 9.81