Skip to contents

Extract posterior draws for specified parameters and spread them into a wide format data frame. This function provides tidybayes-style syntax without requiring the tidybayes package.

Usage

spread_draws(object, ..., regex = FALSE, ndraws = NULL)

# S3 method for class 'ratiod_fit'
spread_draws(object, ..., regex = FALSE, ndraws = NULL)

Arguments

object

A ratiod_fit object

...

Parameter names to extract (unquoted). Supports patterns like beta_num or beta_num[i] for indexed parameters.

regex

Logical; if TRUE, treat parameter names as regex patterns.

ndraws

Number of draws to return. If NULL, returns all.

Value

A data frame with columns .chain, .iteration, .draw, and one column per requested parameter.

Examples

# \donttest{
# Generate synthetic data
set.seed(222)
n <- 50
df <- data.frame(
  count = rpois(n, lambda = 20),
  effort = rgamma(n, shape = 10, rate = 1),
  depth = rnorm(n),
  site = sample(letters[1:5], n, replace = TRUE)
)

# Fit model
fit <- tratio(
  count | effort ~ depth + (1 | site),
  data = df,
  family = ratiod_poisson_gamma(),
  mode = "hmc",
  control = list(iter = 200, warmup = 100, chains = 1)
)
#> Inference: Exact (Tier 1)
#>   Backend: hmc
#> Fitting ratio model...
#>   Family: poisson_gamma
#>   Observations: 50
#>   Iterations: 200 (warmup: 100)
#> Running NUTS sampler...
#>   Parameters: 11
#>   Iterations: 200 (warmup: 100)
#>   Chains: 1 (cores: 1)

# Extract fixed effects
spread_draws(fit, beta_num, beta_denom)
#>     .chain .iteration .draw beta_num.1.   beta_num.2. beta_denom.1.
#> 1        1          1     1    3.070224 -0.0496250660      2.277004
#> 2        1          2     2    3.091140 -0.0005273839      2.362341
#> 3        1          3     3    3.047892 -0.0286481257      2.296117
#> 4        1          4     4    3.076937 -0.0146300795      2.288608
#> 5        1          5     5    3.039080 -0.0100534421      2.293869
#> 6        1          6     6    3.018987 -0.0108732817      2.297061
#> 7        1          7     7    3.075552 -0.0147874112      2.262964
#> 8        1          8     8    3.049691 -0.0191760451      2.231092
#> 9        1          9     9    3.064574  0.0068357539      2.370713
#> 10       1         10    10    3.008138  0.0186376060      2.198892
#> 11       1         11    11    3.073350  0.0039656217      2.401639
#> 12       1         12    12    3.049242 -0.0217991928      2.239452
#> 13       1         13    13    3.058315  0.0283450766      2.309487
#> 14       1         14    14    3.046717 -0.0070611881      2.307831
#> 15       1         15    15    3.056470  0.0059328934      2.256209
#> 16       1         16    16    3.018799 -0.0255361077      2.306899
#> 17       1         17    17    3.016379  0.0448179133      2.305199
#> 18       1         18    18    3.007528  0.0146187537      2.325658
#> 19       1         19    19    3.022206  0.0415209383      2.277813
#> 20       1         20    20    3.099092 -0.0226355817      2.360671
#> 21       1         21    21    3.073815 -0.0150848018      2.260972
#> 22       1         22    22    3.010547  0.0190600952      2.226722
#> 23       1         23    23    2.962371  0.0184165080      2.279670
#> 24       1         24    24    2.967657  0.0146459622      2.250404
#> 25       1         25    25    3.030269  0.0295286722      2.253732
#> 26       1         26    26    3.056841  0.0147689983      2.289466
#> 27       1         27    27    3.027489 -0.0278435759      2.306991
#> 28       1         28    28    3.045444  0.0068378235      2.321546
#> 29       1         29    29    3.035732 -0.0146864439      2.311502
#> 30       1         30    30    3.040943  0.0528328805      2.282724
#> 31       1         31    31    3.028085  0.0470707697      2.281616
#> 32       1         32    32    2.978241 -0.0118719799      2.255897
#> 33       1         33    33    3.035785  0.0108523053      2.270597
#> 34       1         34    34    3.036271  0.0531886438      2.260748
#> 35       1         35    35    3.012053  0.0034972773      2.310537
#> 36       1         36    36    3.003369 -0.0301093670      2.297512
#> 37       1         37    37    3.134142 -0.0012902630      2.316594
#> 38       1         38    38    3.013788 -0.0224128388      2.334449
#> 39       1         39    39    3.050755 -0.0089753160      2.379286
#> 40       1         40    40    3.050755 -0.0089753160      2.379286
#> 41       1         41    41    3.088536 -0.0216017769      2.278100
#> 42       1         42    42    3.062848 -0.0255651630      2.339149
#> 43       1         43    43    3.016873 -0.0481015896      2.343745
#> 44       1         44    44    3.016853 -0.0138596968      2.373974
#> 45       1         45    45    3.010280 -0.0132379970      2.258908
#> 46       1         46    46    3.034366  0.0121066736      2.313612
#> 47       1         47    47    3.034366  0.0121066736      2.313612
#> 48       1         48    48    3.023764 -0.0397783700      2.334184
#> 49       1         49    49    3.061580  0.0312509388      2.362555
#> 50       1         50    50    3.061580  0.0312509388      2.362555
#> 51       1         51    51    3.071059  0.0385050986      2.280937
#> 52       1         52    52    3.093930 -0.0202519864      2.330243
#> 53       1         53    53    3.085851 -0.0131631394      2.305518
#> 54       1         54    54    3.047552 -0.0205831288      2.283348
#> 55       1         55    55    3.021533 -0.0468925450      2.325361
#> 56       1         56    56    3.048761  0.0058746412      2.308400
#> 57       1         57    57    3.086259 -0.0213012044      2.348754
#> 58       1         58    58    3.067979  0.0162271926      2.225288
#> 59       1         59    59    3.054093 -0.0232809517      2.292216
#> 60       1         60    60    3.054473 -0.0345348363      2.300185
#> 61       1         61    61    3.041888  0.0363117492      2.268884
#> 62       1         62    62    3.023070  0.0085966544      2.256429
#> 63       1         63    63    2.993082  0.0319598264      2.171183
#> 64       1         64    64    2.930494  0.0498483904      2.327715
#> 65       1         65    65    3.120002 -0.0141375288      2.257912
#> 66       1         66    66    2.963636  0.0389566116      2.313121
#> 67       1         67    67    3.104280  0.0440478565      2.286893
#> 68       1         68    68    3.011221  0.0004574254      2.323548
#> 69       1         69    69    3.092979  0.0304905552      2.264257
#> 70       1         70    70    3.047569  0.0048926410      2.317834
#> 71       1         71    71    3.033686 -0.0431229050      2.313142
#> 72       1         72    72    3.093883 -0.0341420549      2.333799
#> 73       1         73    73    3.093883 -0.0341420549      2.333799
#> 74       1         74    74    3.069523 -0.0460690129      2.325759
#> 75       1         75    75    3.091897 -0.0095743738      2.418706
#> 76       1         76    76    3.065459 -0.0026882617      2.184014
#> 77       1         77    77    3.066223  0.0253800411      2.247524
#> 78       1         78    78    3.027824 -0.0041286370      2.284701
#> 79       1         79    79    3.015897 -0.0227615747      2.306595
#> 80       1         80    80    3.003392 -0.0267842063      2.227561
#> 81       1         81    81    3.022300 -0.0216512180      2.300297
#> 82       1         82    82    3.022594  0.0100649852      2.299942
#> 83       1         83    83    3.007334  0.0088155616      2.328942
#> 84       1         84    84    2.967047  0.0070286099      2.362238
#> 85       1         85    85    3.071455  0.0101214355      2.281202
#> 86       1         86    86    3.039532 -0.0050095016      2.247681
#> 87       1         87    87    3.097515 -0.0006533426      2.249625
#> 88       1         88    88    3.058373  0.0192203060      2.318310
#> 89       1         89    89    3.017995 -0.0385909464      2.228858
#> 90       1         90    90    3.060231 -0.0380638036      2.324792
#> 91       1         91    91    3.059300  0.0205049538      2.372701
#> 92       1         92    92    3.064517 -0.0648102284      2.427101
#> 93       1         93    93    3.128933  0.0067571763      2.416071
#> 94       1         94    94    3.104549  0.0287602405      2.320671
#> 95       1         95    95    3.071079 -0.0318210885      2.314203
#> 96       1         96    96    3.002131 -0.0068074446      2.281281
#> 97       1         97    97    3.024617 -0.0060118742      2.284238
#> 98       1         98    98    3.033392 -0.0155922365      2.337058
#> 99       1         99    99    3.046349 -0.0062987150      2.381068
#> 100      1        100   100    3.052079  0.0581786084      2.410583
#>     beta_denom.2.
#> 1   -0.0556623894
#> 2   -0.1648648327
#> 3    0.1330470792
#> 4    0.0455439148
#> 5    0.0476631301
#> 6   -0.0279501367
#> 7    0.0099163847
#> 8   -0.0244856602
#> 9   -0.0214337411
#> 10   0.0173597031
#> 11   0.0386203510
#> 12  -0.0115268622
#> 13   0.1108441418
#> 14   0.1120527570
#> 15  -0.0613730707
#> 16   0.0676712488
#> 17  -0.0631800353
#> 18  -0.0300624393
#> 19   0.0007300507
#> 20   0.0081692809
#> 21  -0.0199235824
#> 22  -0.0390679834
#> 23  -0.1153973211
#> 24  -0.1374640645
#> 25   0.0225189927
#> 26  -0.0265208946
#> 27  -0.0092398688
#> 28   0.0084572600
#> 29  -0.0251195804
#> 30   0.0025496558
#> 31  -0.0060997233
#> 32   0.0268757971
#> 33   0.0290834122
#> 34   0.0225017815
#> 35  -0.0810491254
#> 36  -0.0692180143
#> 37  -0.0680103977
#> 38  -0.0381104042
#> 39   0.0422078661
#> 40   0.0422078661
#> 41  -0.0603650995
#> 42   0.0382076695
#> 43  -0.0210955503
#> 44  -0.0478984044
#> 45   0.0303633027
#> 46   0.0028398676
#> 47   0.0028398676
#> 48   0.0193681488
#> 49  -0.0836040954
#> 50  -0.0836040954
#> 51   0.0864015014
#> 52  -0.0131423582
#> 53  -0.0034499291
#> 54  -0.0276155749
#> 55   0.0124935583
#> 56   0.0751788064
#> 57  -0.0448502222
#> 58   0.0162819848
#> 59  -0.0286309454
#> 60  -0.0084741016
#> 61  -0.0479273893
#> 62  -0.0429286858
#> 63  -0.0623287726
#> 64   0.0134092029
#> 65  -0.0306820953
#> 66   0.0169693241
#> 67  -0.0276412627
#> 68  -0.0062884772
#> 69  -0.0533802281
#> 70  -0.0603977552
#> 71   0.0103664880
#> 72  -0.0379166230
#> 73  -0.0379166230
#> 74  -0.0002416884
#> 75  -0.0507168537
#> 76   0.0042033947
#> 77  -0.0326784346
#> 78  -0.0292394059
#> 79  -0.0037563336
#> 80  -0.0433964922
#> 81   0.0172352973
#> 82  -0.0249980550
#> 83  -0.0140043589
#> 84  -0.0114684785
#> 85  -0.0132953674
#> 86   0.0116570299
#> 87  -0.0674848120
#> 88   0.0420371263
#> 89   0.0625430549
#> 90  -0.0219545570
#> 91  -0.0089632771
#> 92  -0.0273910941
#> 93   0.0026667042
#> 94  -0.0597093232
#> 95  -0.0080021168
#> 96  -0.0379468408
#> 97  -0.0455088326
#> 98   0.0543568879
#> 99  -0.0071952009
#> 100 -0.0153868752

# Subsample draws
spread_draws(fit, sigma_re, ndraws = 100)
#>     .chain .iteration .draw    sigma_re
#> 1        1          1     1 0.006320962
#> 2        1          2     2 0.114242352
#> 3        1          3     3 0.012815100
#> 4        1          4     4 0.012829838
#> 5        1          5     5 0.025820559
#> 6        1          6     6 0.030684354
#> 7        1          7     7 0.100390021
#> 8        1          8     8 0.096375332
#> 9        1          9     9 0.032058525
#> 10       1         10    10 0.061305487
#> 11       1         11    11 0.021907251
#> 12       1         12    12 0.055890660
#> 13       1         13    13 0.033227940
#> 14       1         14    14 0.082589597
#> 15       1         15    15 0.088329368
#> 16       1         16    16 0.012216207
#> 17       1         17    17 0.023146378
#> 18       1         18    18 0.022159602
#> 19       1         19    19 0.090730108
#> 20       1         20    20 0.048972617
#> 21       1         21    21 0.045597107
#> 22       1         22    22 0.038492631
#> 23       1         23    23 0.029390719
#> 24       1         24    24 0.014819806
#> 25       1         25    25 0.040597492
#> 26       1         26    26 0.030000705
#> 27       1         27    27 0.097132700
#> 28       1         28    28 0.096258240
#> 29       1         29    29 0.033032950
#> 30       1         30    30 0.014093029
#> 31       1         31    31 0.019836283
#> 32       1         32    32 0.019724880
#> 33       1         33    33 0.010338487
#> 34       1         34    34 0.064865364
#> 35       1         35    35 0.033813944
#> 36       1         36    36 0.040805170
#> 37       1         37    37 0.023723696
#> 38       1         38    38 0.027747359
#> 39       1         39    39 0.024198386
#> 40       1         40    40 0.024198386
#> 41       1         41    41 0.039149648
#> 42       1         42    42 0.047626967
#> 43       1         43    43 0.011128766
#> 44       1         44    44 0.005106663
#> 45       1         45    45 0.002358207
#> 46       1         46    46 0.030381412
#> 47       1         47    47 0.030381412
#> 48       1         48    48 0.027578360
#> 49       1         49    49 0.039985463
#> 50       1         50    50 0.039985463
#> 51       1         51    51 0.029405769
#> 52       1         52    52 0.027869910
#> 53       1         53    53 0.014128252
#> 54       1         54    54 0.013829996
#> 55       1         55    55 0.017112193
#> 56       1         56    56 0.017797644
#> 57       1         57    57 0.019048195
#> 58       1         58    58 0.020847803
#> 59       1         59    59 0.036523011
#> 60       1         60    60 0.029128357
#> 61       1         61    61 0.052774933
#> 62       1         62    62 0.053472083
#> 63       1         63    63 0.068915037
#> 64       1         64    64 0.044882749
#> 65       1         65    65 0.070438049
#> 66       1         66    66 0.067517153
#> 67       1         67    67 0.078054899
#> 68       1         68    68 0.075184675
#> 69       1         69    69 0.144792895
#> 70       1         70    70 0.058917399
#> 71       1         71    71 0.056233840
#> 72       1         72    72 0.054902917
#> 73       1         73    73 0.054902917
#> 74       1         74    74 0.067829701
#> 75       1         75    75 0.069881112
#> 76       1         76    76 0.012242129
#> 77       1         77    77 0.010066751
#> 78       1         78    78 0.012782021
#> 79       1         79    79 0.011853657
#> 80       1         80    80 0.036875039
#> 81       1         81    81 0.038457887
#> 82       1         82    82 0.054093539
#> 83       1         83    83 0.054047037
#> 84       1         84    84 0.011485119
#> 85       1         85    85 0.010804594
#> 86       1         86    86 0.020002652
#> 87       1         87    87 0.022388405
#> 88       1         88    88 0.058189350
#> 89       1         89    89 0.106354630
#> 90       1         90    90 0.131453019
#> 91       1         91    91 0.054139142
#> 92       1         92    92 0.069613858
#> 93       1         93    93 0.067267081
#> 94       1         94    94 0.043001383
#> 95       1         95    95 0.062602488
#> 96       1         96    96 0.043615944
#> 97       1         97    97 0.042220044
#> 98       1         98    98 0.044996566
#> 99       1         99    99 0.044879763
#> 100      1        100   100 0.038344241
# }