## 4.8
degree <- 0 ## gatherer for degree
node_interested <- 'A'
data <- read.csv('network.txt', header = FALSE, sep = '-')
for( rn in 1:nrow(data) ) {
if( data[rn, 1] == node_interested || data[rn, 2 ] == node_interested ) {
degree <- degree + 1
}
}
print( paste( 'Degree for', node_interested, 'is', degree ) )
[1] "Degree for A is 6"
## 4.9
in_degree <- 0 ## gatherer for degrees
out_degree <- 0
node_interested <- 'A'
data <- read.csv('directed_network.txt', header = FALSE )
for( rn in 1:nrow(data) ) {
line <- data[rn, 1]
line <- strsplit( line, "->" )[[1]]
if( line[1] == node_interested ) {
out_degree <- out_degree + 1
}
if( line[2] == node_interested ) {
in_degree <- in_degree + 1
}
}
print( paste( 'Out degree for', node_interested, 'is', out_degree ) )
print( paste( 'In degree for', node_interested, 'is', in_degree ) )
[1] "Out degree for A is 1" [1] "In degree for A is 5"
## 4.10
## key observation: degree is actually the column sum on the matrix
degree <- 0 ## gatherer
node_interested <- 1 ## this is the index location of the colum we are interested in
data <- read.csv('adjacency_matrix.txt', header = FALSE )
for( rn in 1:nrow(data) ) {
degree <- degree + data[ rn, node_interested ]
}
print( degree )
[1] 1