Simulates new data from a given cord object
simulate.cord.Rd
Simulates new data from a given cord object
Usage
# S3 method for cord
simulate(object, nsim = 1, seed = NULL, newdata = object$obj$data, ...)
Arguments
- object
is a cord object, e.g. from output of
cord
- nsim
Number of simulations, defaults to 1. If nsim > 1, the simulated data will be appended.
- seed
Random number seed, defaults to a random seed number.
- newdata
A data frame in which to look for X covariates with which to simulate.
- ...
not used Defaults to the X covariates in the fitted model.
Examples
abund = spider$abund
spider_mod_ssdm = stackedsdm(abund,~1, data = spider$x, ncores=2)
spid_lv_ssdm = cord(spider_mod_ssdm)
simulate(spid_lv_ssdm, nsim=2)
#> Alopacce Alopcune Alopfabr Arctlute Arctperi Auloalbi Pardlugu Pardmont
#> [1,] 0 0 0 0 0 0 2 0
#> [2,] 0 3 0 0 0 0 0 7
#> [3,] 0 17 0 1 0 12 9 17
#> [4,] 12 0 6 0 5 0 0 4
#> [5,] 0 9 0 2 0 1 3 2
#> [6,] 1 57 0 2 0 65 0 51
#> [7,] 3 7 0 1 0 2 2 5
#> [8,] 0 20 0 0 0 25 3 15
#> [9,] 0 11 0 0 0 0 31 0
#> [10,] 0 0 0 0 0 5 6 1
#> [11,] 0 7 1 1 0 17 0 24
#> [12,] 10 1 0 0 0 1 0 69
#> [13,] 0 24 0 3 0 18 5 3
#> [14,] 0 0 0 0 0 0 22 0
#> [15,] 0 1 0 0 0 0 33 1
#> [16,] 2 1 1 0 0 0 1 7
#> [17,] 1 10 0 10 0 48 38 0
#> [18,] 0 1 0 0 0 1 11 1
#> [19,] 1 1 2 0 0 4 1 1
#> [20,] 6 5 0 1 0 17 0 19
#> [21,] 2 4 0 3 0 72 2 24
#> [22,] 0 0 0 0 0 0 9 0
#> [23,] 0 0 0 0 0 0 3 0
#> [24,] 0 7 0 1 0 0 0 25
#> [25,] 0 15 0 0 0 0 4 0
#> [26,] 12 0 4 0 8 0 1 0
#> [27,] 0 2 0 6 0 5 2 3
#> [28,] 0 9 0 0 0 0 5 0
#> [29,] 0 0 0 0 0 0 25 1
#> [30,] 1 8 0 0 5 0 0 4
#> [31,] 14 12 17 9 1 15 0 8
#> [32,] 0 4 3 0 0 0 2 0
#> [33,] 6 2 3 0 0 2 0 83
#> [34,] 9 4 0 1 0 5 0 15
#> [35,] 0 3 0 2 0 0 38 1
#> [36,] 0 20 0 3 0 51 3 15
#> [37,] 3 1 0 0 0 1 0 4
#> [38,] 16 0 0 0 0 0 0 54
#> [39,] 0 6 0 0 0 1 45 0
#> [40,] 15 11 2 2 0 2 0 40
#> [41,] 6 2 6 0 1 0 19 7
#> [42,] 75 1 21 0 0 0 0 50
#> [43,] 0 2 0 0 0 0 6 9
#> [44,] 14 1 16 1 12 1 5 25
#> [45,] 3 4 4 0 0 5 4 3
#> [46,] 0 22 0 10 0 38 14 21
#> [47,] 2 15 0 8 0 1 1 8
#> [48,] 0 10 0 0 0 0 1 0
#> [49,] 0 0 0 0 7 0 4 0
#> [50,] 14 1 2 0 9 0 1 9
#> [51,] 0 12 0 4 0 8 1 38
#> [52,] 0 0 7 0 1 0 0 2
#> [53,] 19 26 0 2 0 12 0 24
#> [54,] 0 21 0 1 0 6 0 30
#> [55,] 0 0 12 0 0 3 0 0
#> [56,] 0 4 5 0 0 0 3 19
#> Pardnigr Pardpull Trocterr Zoraspin
#> [1,] 0 0 21 2
#> [2,] 46 7 24 12
#> [3,] 39 79 146 64
#> [4,] 0 0 0 0
#> [5,] 15 11 68 27
#> [6,] 62 117 107 10
#> [7,] 122 144 101 15
#> [8,] 81 127 198 25
#> [9,] 3 0 108 30
#> [10,] 19 10 87 5
#> [11,] 2 0 95 14
#> [12,] 0 12 7 0
#> [13,] 13 84 93 16
#> [14,] 0 0 10 0
#> [15,] 6 1 45 6
#> [16,] 0 1 19 0
#> [17,] 57 17 117 21
#> [18,] 3 0 83 7
#> [19,] 5 7 23 0
#> [20,] 18 10 25 10
#> [21,] 1 35 65 21
#> [22,] 0 0 10 0
#> [23,] 0 0 1 0
#> [24,] 0 18 86 5
#> [25,] 40 12 126 26
#> [26,] 0 0 0 0
#> [27,] 32 1 64 17
#> [28,] 7 4 71 37
#> [29,] 0 0 7 0
#> [30,] 0 1 14 1
#> [31,] 3 3 12 13
#> [32,] 0 0 17 1
#> [33,] 3 7 10 0
#> [34,] 14 33 21 5
#> [35,] 0 2 87 10
#> [36,] 52 43 197 22
#> [37,] 0 1 19 12
#> [38,] 0 1 1 0
#> [39,] 0 1 70 20
#> [40,] 158 144 62 9
#> [41,] 0 0 9 1
#> [42,] 0 0 0 0
#> [43,] 5 24 28 13
#> [44,] 0 0 11 1
#> [45,] 30 6 63 0
#> [46,] 91 146 115 61
#> [47,] 8 44 73 25
#> [48,] 28 19 86 23
#> [49,] 0 0 2 0
#> [50,] 0 0 0 0
#> [51,] 33 5 81 25
#> [52,] 0 0 7 1
#> [53,] 77 59 61 14
#> [54,] 68 2 114 9
#> [55,] 0 1 12 0
#> [56,] 1 0 18 1
# \donttest{
# using mvabund
library(mvabund) #for manyglm
abund=mvabund(abund)
spider_mod = manyglm(abund~1)
spid_lv = cord(spider_mod)
simulate(spid_lv)
#> Alopacce Alopcune Alopfabr Arctlute Arctperi Auloalbi Pardlugu Pardmont
#> [1,] 1 0 0 0 0 7 0 10
#> [2,] 13 0 2 0 1 0 0 1
#> [3,] 6 2 3 6 0 0 1 44
#> [4,] 0 3 0 0 0 11 8 0
#> [5,] 1 3 0 0 0 2 6 1
#> [6,] 0 1 0 0 0 0 26 5
#> [7,] 5 1 10 0 0 0 1 0
#> [8,] 2 1 9 0 0 0 2 11
#> [9,] 25 5 9 3 2 1 0 15
#> [10,] 1 17 0 4 0 45 0 9
#> [11,] 2 5 2 0 2 23 8 1
#> [12,] 20 0 0 0 0 0 0 49
#> [13,] 4 5 0 0 0 0 2 9
#> [14,] 7 0 29 0 19 0 0 31
#> [15,] 11 9 1 0 0 11 0 62
#> [16,] 0 2 2 0 0 4 5 0
#> [17,] 34 10 0 0 0 7 0 2
#> [18,] 0 1 0 0 1 1 28 1
#> [19,] 0 0 3 0 0 0 8 0
#> [20,] 0 1 0 0 0 0 42 0
#> [21,] 0 1 0 17 0 2 94 0
#> [22,] 5 15 0 4 0 11 0 56
#> [23,] 36 0 16 0 46 0 0 32
#> [24,] 33 5 3 0 9 0 0 64
#> [25,] 11 9 0 3 0 1 0 69
#> [26,] 1 6 0 0 0 27 0 1
#> [27,] 11 0 5 0 0 0 0 20
#> [28,] 0 0 0 0 0 0 0 6
#> Pardnigr Pardpull Trocterr Zoraspin
#> [1,] 8 2 41 14
#> [2,] 0 0 6 2
#> [3,] 8 0 24 3
#> [4,] 2 2 22 1
#> [5,] 0 0 5 0
#> [6,] 0 2 13 3
#> [7,] 0 2 5 0
#> [8,] 5 8 12 10
#> [9,] 25 1 23 0
#> [10,] 41 22 52 11
#> [11,] 17 0 22 4
#> [12,] 0 2 8 0
#> [13,] 2 1 72 16
#> [14,] 0 0 0 2
#> [15,] 25 6 108 20
#> [16,] 0 0 3 9
#> [17,] 0 2 19 2
#> [18,] 20 5 80 13
#> [19,] 0 0 0 0
#> [20,] 0 0 16 0
#> [21,] 4 18 49 11
#> [22,] 22 151 97 24
#> [23,] 0 3 0 0
#> [24,] 1 0 6 0
#> [25,] 8 34 66 6
#> [26,] 19 21 52 9
#> [27,] 0 1 2 0
#> [28,] 6 0 6 4
spider_mod_X = manyglm(abund ~ soil.dry + bare.sand, data=spider$x)
spid_lv_X = cord(spider_mod_X)
Xnew = spider$x[1:10,]
simulate(spid_lv_X, newdata = Xnew)
#> Alopacce Alopcune Alopfabr Arctlute Arctperi Auloalbi Pardlugu Pardmont
#> [1,] 1 4 0 1 0 5 13 1
#> [2,] 1 13 0 5 0 9 0 12
#> [3,] 11 11 0 1 0 5 0 37
#> [4,] 2 0 1 0 0 0 0 7
#> [5,] 1 5 0 0 0 10 1 9
#> [6,] 0 1 0 0 0 0 1 0
#> [7,] 0 0 0 0 0 0 4 0
#> [8,] 13 9 0 0 0 1 0 29
#> [9,] 1 3 0 0 0 5 1 13
#> [10,] 0 0 0 0 0 0 0 0
#> Pardnigr Pardpull Trocterr Zoraspin
#> [1,] 23 5 45 17
#> [2,] 50 10 79 1
#> [3,] 6 6 54 4
#> [4,] 0 0 1 0
#> [5,] 31 77 77 17
#> [6,] 11 0 25 8
#> [7,] 0 0 23 1
#> [8,] 15 86 28 7
#> [9,] 8 14 16 6
#> [10,] 0 0 10 4
simulate(spid_lv_X, nsim=2, newdata = Xnew)
#> Alopacce Alopcune Alopfabr Arctlute Arctperi Auloalbi Pardlugu Pardmont
#> [1,] 5 1 1 1 0 0 11 8
#> [2,] 0 0 0 0 0 0 14 0
#> [3,] 2 2 0 0 0 0 9 0
#> [4,] 5 11 0 0 0 1 5 0
#> [5,] 1 3 0 14 0 12 0 4
#> [6,] 1 2 0 0 0 0 2 9
#> [7,] 1 2 0 1 0 0 0 37
#> [8,] 1 0 0 1 0 0 7 4
#> [9,] 21 39 0 0 0 0 0 40
#> [10,] 3 4 1 0 0 4 0 15
#> [11,] 2 1 2 0 0 0 16 8
#> [12,] 1 11 0 5 0 12 0 6
#> [13,] 1 0 0 0 0 0 1 1
#> [14,] 2 0 0 0 0 0 0 2
#> [15,] 2 19 0 3 0 15 6 34
#> [16,] 0 4 0 3 0 11 0 23
#> [17,] 1 11 0 0 0 24 2 11
#> [18,] 4 1 0 0 0 0 3 0
#> [19,] 3 4 0 1 0 13 9 1
#> [20,] 1 0 6 0 0 0 0 2
#> Pardnigr Pardpull Trocterr Zoraspin
#> [1,] 4 0 11 0
#> [2,] 0 0 13 19
#> [3,] 0 1 13 0
#> [4,] 0 0 29 0
#> [5,] 5 0 36 15
#> [6,] 0 0 19 3
#> [7,] 5 13 8 0
#> [8,] 0 0 6 0
#> [9,] 16 138 24 3
#> [10,] 5 0 18 3
#> [11,] 0 1 23 0
#> [12,] 71 240 130 7
#> [13,] 0 3 17 1
#> [14,] 0 0 3 0
#> [15,] 51 194 111 34
#> [16,] 208 10 74 102
#> [17,] 4 270 117 8
#> [18,] 1 0 26 0
#> [19,] 26 2 46 12
#> [20,] 0 0 0 0
spider_mod_X_ssdm = stackedsdm(abund, formula_X = ~. -bare.sand, data = spider$x, ncores=2)
spid_lv_X_ssdm = cord(spider_mod_X_ssdm)
simulate(spid_lv_X_ssdm, newdata = Xnew)
#> Alopacce Alopcune Alopfabr Arctlute Arctperi Auloalbi Pardlugu Pardmont
#> [1,] 12 3 3 2 0 3 0 50
#> [2,] 2 43 0 0 0 69 5 19
#> [3,] 6 13 7 1 0 8 0 10
#> [4,] 8 0 0 2 0 4 0 63
#> [5,] 1 2 0 0 0 5 3 6
#> [6,] 0 6 0 6 0 4 0 16
#> [7,] 0 6 0 5 0 4 0 7
#> [8,] 0 2 0 0 0 1 25 3
#> [9,] 7 2 1 0 0 0 1 24
#> [10,] 3 0 1 0 0 0 0 9
#> Pardnigr Pardpull Trocterr Zoraspin
#> [1,] 0 19 10 1
#> [2,] 90 193 201 51
#> [3,] 7 47 24 1
#> [4,] 2 67 27 4
#> [5,] 34 74 106 21
#> [6,] 4 14 27 4
#> [7,] 42 55 70 21
#> [8,] 1 0 10 2
#> [9,] 2 3 19 4
#> [10,] 0 0 0 0
# }