graph: Create a graph

Description Usage Arguments Details Value Examples

View source: R/package.R

Description

Graphs can be specified as adjacency lists or (two) data frames.

Usage

1
graph(x, ...)

Arguments

x

A data frame, or a named list of character vectors. See details below.

...

Additional arguments, see details below.

Details

If the first argument is a data frame, then it is interpreted as vertex data, and a second data frame must be supplied as edge data. The first column of the vertex data must contain (character) vertex ids. The first two columns of the edge data frame must contain the directed edges of the graph, in the order of tail and head, as characters referring to the nodes ids. Other columns are kept as metadata.

If the first argument is not a data frame, but a list, then it is interpreted as an adjacency list. It must be named, and the names will be used as vertex ids. Each list element must be a character vector containing the successors of each vertex.

Value

A graph object.

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
funcs <- graph(list(
  drop_internal = character(0),
  get_deps = c("get_description", "parse_deps",
    "%||%", "drop_internal"),
  get_description = "pkg_from_filename",
  parse_deps = "str_trim",
  cran_file = c("get_pkg_type", "r_minor_version", "cran_file"),
  download_urls = c("split_pkg_names_versions", "cran_file"),
  filename_from_url = character(0),
  get_pkg_type = character(0),
  pkg_download = c("dir_exists", "download_urls",
    "filename_from_url", "try_download"),
  r_minor_version = character(0),
  try_download = character(0),
  drop_missing_deps = character(0),
  install_order = character(0),
  restore = c("pkg_download", "drop_missing_deps",
    "install_order", "get_deps"),
  snap = character(0),
  `%||%` = character(0),
  data_frame = character(0),
  dir_exists = character(0),
  pkg_from_filename = character(0),
  split_pkg_names_versions = "data_frame",
  str_trim = character(0)
))
funcs

vertices <- data.frame(
  stringsAsFactors = FALSE,
  name = c("Tom Hanks", "Cate Blanchett", "Matt Damon", "Kate Winslet",
    "Saving Private Ryan", "Contagion", "The Talented Mr. Ripley"),
  what = c("actor", "actor", "actor", "actor", "movie", "movie", "movie"),
  born = c("1956-07-09", "1966-05-26", "1970-10-08", "1975-10-05",
    NA, NA, NA),
  gender = c("M", "F", "M", "F", NA, NA, NA),
  year = c(NA, NA, NA, NA, 1998, 2011, 1999)
)

edges <- data.frame(
  stringsAsFactors = FALSE,
  actor = c("Tom Hanks", "Cate Blanchett", "Matt Damon", "Matt Damon",
    "Kate Winslet"),
  movie = c("Saving Private Ryan", "The Talented Mr. Ripley",
    "Saving Private Ryan", "The Talented Mr. Ripley", "Contagion")
)
actors <- graph(vertices, edges)
actors

Example output

Attaching package: 'simplegraph'

The following object is masked from 'package:base':

    order

$drop_internal
character(0)

$get_deps
[1] "get_description" "parse_deps"      "%||%"            "drop_internal"  

$get_description
[1] "pkg_from_filename"

$parse_deps
[1] "str_trim"

$cran_file
[1] "get_pkg_type"    "r_minor_version" "cran_file"      

$download_urls
[1] "split_pkg_names_versions" "cran_file"               

$filename_from_url
character(0)

$get_pkg_type
character(0)

$pkg_download
[1] "dir_exists"        "download_urls"     "filename_from_url"
[4] "try_download"     

$r_minor_version
character(0)

$try_download
character(0)

$drop_missing_deps
character(0)

$install_order
character(0)

$restore
[1] "pkg_download"      "drop_missing_deps" "install_order"    
[4] "get_deps"         

$snap
character(0)

$`%||%`
character(0)

$data_frame
character(0)

$dir_exists
character(0)

$pkg_from_filename
character(0)

$split_pkg_names_versions
[1] "data_frame"

$str_trim
character(0)

attr(,"class")
[1] "simplegraph_adjlist" "simplegraph"         "list"               
$nodes
                     name  what       born gender year
1               Tom Hanks actor 1956-07-09      M   NA
2          Cate Blanchett actor 1966-05-26      F   NA
3              Matt Damon actor 1970-10-08      M   NA
4            Kate Winslet actor 1975-10-05      F   NA
5     Saving Private Ryan movie       <NA>   <NA> 1998
6               Contagion movie       <NA>   <NA> 2011
7 The Talented Mr. Ripley movie       <NA>   <NA> 1999

$edges
           actor                   movie
1      Tom Hanks     Saving Private Ryan
2 Cate Blanchett The Talented Mr. Ripley
3     Matt Damon     Saving Private Ryan
4     Matt Damon The Talented Mr. Ripley
5   Kate Winslet               Contagion

attr(,"class")
[1] "simplegraph_df" "simplegraph"   

simplegraph documentation built on May 30, 2017, 8:05 a.m.