Skip to contents

Helper functions to create and work with S3 class <daedalus_country> objects for use with daedalus(). These objects store country parameters for reuse and have methods for easy parameter access and editing, as well as processing raw country characteristics for the DAEDALUS model.

Usage

daedalus_country(
  country,
  parameters = list(contact_matrix = NULL, contacts_workplace = NULL,
    contacts_consumer_worker = NULL)
)

is_daedalus_country(x)

# S3 method for class 'daedalus_country'
print(x, ...)

Arguments

country

A string giving the country or territory name, or ISO2 or ISO3 code; must be from among country_codes_iso2c or country_codes_iso3c or country_names.

parameters

An optional named list of country parameters that are allowed to be modified. Currently, users may only pass their own contact matrix, workplace contacts, and consumer-worker contact matrix. If these are not passed, default values are accessed from stored package data.

x

An object of the <daedalus_country> class.

...

Other parameters passed to print().

Value

  • daedalus_country() returns an object of the S3 class <daedalus_country>

  • is_daedalus_country() returns a logical for whether an object is a <daedalus_country>.

  • print.daedalus_country() invisibly returns the <daedalus_country> object x. Called for printing side-effects.

Examples

x <- daedalus_country("Canada")

x
#> <daedalus_country>
#>  Name: Canada
#>  Demography: 1993132, 5949109, 22966942, and 6832974
#>  Community contact matrix:
#>             0-4      5-19    20-64       65+
#> 0-4   1.9157895 1.5235823 5.014414 0.3169637
#> 5-19  0.5104463 8.7459756 6.322175 0.7948344
#> 20-64 0.4351641 1.6376280 7.821398 1.0350292
#> 65+   0.1187166 0.7488765 3.639207 1.5142917
#>  GNI (PPP $): 46050
#>  Hospital capacity: 7989

daedalus_country(
  "United Kingdom",
  parameters = list(contact_matrix = matrix(1, 4, 4))
)
#> <daedalus_country>
#>  Name: United Kingdom
#>  Demography: 3924490, 11762039, 39536463, and 12663012
#>  Community contact matrix:
#>      [,1] [,2] [,3] [,4]
#> [1,]    1    1    1    1
#> [2,]    1    1    1    1
#> [3,]    1    1    1    1
#> [4,]    1    1    1    1
#>  GNI (PPP $): 45870
#>  Hospital capacity: 26219

# check whether `x` is a <country> object
is_daedalus_country(x)
#> [1] TRUE

# assign class members
# using set_data()
set_data(x, contact_matrix = matrix(99, 4, 4))
#> <daedalus_country>
#>  Name: Canada
#>  Demography: 1993132, 5949109, 22966942, and 6832974
#>  Community contact matrix:
#>      [,1] [,2] [,3] [,4]
#> [1,]   99   99   99   99
#> [2,]   99   99   99   99
#> [3,]   99   99   99   99
#> [4,]   99   99   99   99
#>  GNI (PPP $): 46050
#>  Hospital capacity: 7989

# using assignment operators
x$contact_matrix <- matrix(99, 4, 4)
x
#> <daedalus_country>
#>  Name: Canada
#>  Demography: 1993132, 5949109, 22966942, and 6832974
#>  Community contact matrix:
#>      [,1] [,2] [,3] [,4]
#> [1,]   99   99   99   99
#> [2,]   99   99   99   99
#> [3,]   99   99   99   99
#> [4,]   99   99   99   99
#>  GNI (PPP $): 46050
#>  Hospital capacity: 7989