read.graph: Read and write a graph-object

Description Usage Arguments Value Author(s) See Also Examples

Description

Construct a graph-object from a file or a matrix; write graph-object to file

Usage

1
2
3
4
5
6
7
8
9
inla.read.graph(..., size.only = FALSE)
inla.write.graph(graph, filename = "graph.dat", mode = c("binary", "ascii"), ...)

## S3 method for class 'inla.graph'
summary(object, ...)
## S3 method for class 'inla.graph'
plot(x, y, ...)
## S3 method for class 'inla.graph.summary'
print(x, ...)

Arguments

filename

The filename of the graph.

graph

An inla.graph-object, a (sparse) symmetric matrix, a filename containing the graph, a list or collection of characters and/or numbers defining the graph, or a neighbours list with class nb (see spdep::card and spdep::poly2nb for for details of nb and an example a function returning an nb object

mode

The mode of the file; ascii-file or a (gzip-compressed) binary. Default value depends on the inla.option internal.binary.mode which is default TRUE; see inla.setOption.

object

An inla.graph -object

x

An inla.graph -object

y

Not used

size.only

Only read the size of the graph

...

Additional arguments. In inla.read.graph, then it is the graph definition (object, matrix, character, filename), plus extra arguments. In inla.write.graph it is extra arguments to inla.read.graph.

Value

The output of inla.read.graph, is an inla.graph object, with elements

n

is the size of the graph

nnbs

is a vector with the number of neigbours

nbs

is a list-list with the neigbours

cc

list with connected component information

  • idis a vector with the connected component id for each node (starting from 1)

  • nis the number of connected components

  • nodesis a list-list of nodes belonging to each connected component

Methods implemented for inla.graph are summary and plot. The method plot require the libraries Rgraphviz and graph from the Bioconductor-project, see https://www.bioconductor.org.

Author(s)

Havard Rue hrue@r-inla.org

See Also

inla.spy

Examples

 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
26
27
28
29
## a graph from a file
cat("3 1 1 2 2 1 1 3 0\n", file="g.dat")
g = inla.read.graph("g.dat")
## writing an inla.graph-object to file
g.file = inla.write.graph(g, mode="binary")
## re-reading it from that file
gg = inla.read.graph(g.file)
summary(g)
##
Not run:
plot(g)
inla.spy(g)
## when defining the graph directly in the call, 
## we can use a mix of character and numbers
g = inla.read.graph(c(3, 1, "1 2 2 1 1 3", 0))
inla.spy(c(3, 1, "1 2 2 1 1 3 0"))
inla.spy(c(3, 1, "1 2 2 1 1 3 0"),  reordering=3:1)
inla.write.graph(c(3, 1, "1 2 2 1 1 3 0"))

## building a graph from adjacency matrix
adjacent = matrix(0, nrow = 4, ncol = 4)
adjacent[1,4] = adjacent[4,1] = 1
adjacent[2,4] = adjacent[4,2] = 1
adjacent[2,3] = adjacent[3,2] = 1
adjacent[3,4] = adjacent[4,3] = 1
g = inla.read.graph(adjacent)
plot(g)
summary(g)
End(Not run)

INBO-BMK/INLA documentation built on Dec. 4, 2019, 11:43 p.m.