Predict response from new data

# S3 method for pibblefit
predict(
  object,
  newdata = NULL,
  response = "LambdaX",
  size = NULL,
  use_names = TRUE,
  summary = FALSE,
  iter = NULL,
  from_scratch = FALSE,
  ...
)

Arguments

object

An object of class pibblefit

newdata

An optional matrix for which to evaluate predictions. If NULL (default), the original data of the model is used.

response

Options = "LambdaX":Mean of regression, "Eta", "Y": counts

size

the number of counts per sample if response="Y" (as vector or matrix), default if newdata=NULL and response="Y" is to use colsums of m$Y. Otherwise uses median colsums of m$Y as default. If passed as a matrix should have dimensions ncol(newdata) x iter.

use_names

if TRUE apply names to output

summary

if TRUE, posterior summary of predictions are returned rather than samples

iter

number of iterations to return if NULL uses object$iter

from_scratch

should predictions of Y come from fitted Eta or from predictions of Eta from posterior of Lambda? (default: false)

...

other arguments passed to summarise_posterior

Value

(if summary==FALSE) array D x N x iter; (if summary==TRUE) tibble with calculated posterior summaries

Details

currently only implemented for pibblefit objects in coord_system "default" "alr", or "ilr".

Examples

sim <- pibble_sim()
fit <- pibble(sim$Y, sim$X)
predict(fit)[,,1:2] # just show 2 samples
#> , , 1
#> 
#>                      s1         s2          s3          s4           s5
#> log(c1/c10) -1.03761376  0.3871368 -1.47680134  0.08561532 -1.816292577
#> log(c2/c10) -0.79835240  1.3782416 -1.46930005  0.91760671 -1.987941424
#> log(c3/c10)  0.07237039 -0.8296609  0.35042673 -0.63876304  0.565363793
#> log(c4/c10)  0.04790629  0.1228250  0.02481216  0.10696988  0.006960437
#> log(c5/c10) -0.06571232 -0.3289576  0.01543455 -0.27324671  0.078160934
#> log(c6/c10) -0.88779717 -0.8590081 -0.89667158 -0.86510072 -0.903531480
#> log(c7/c10)  0.27653375  0.4184410  0.23279001  0.38840904  0.198976182
#> log(c8/c10)  0.13178964 -0.3848268  0.29103964 -0.27549473  0.414139612
#> log(c9/c10) -0.49822775 -0.3832991 -0.53365516 -0.40762160 -0.561040484
#>                      s6          s7          s8          s9         s10
#> log(c1/c10) -1.13647318 -0.96114432 -2.21319626 -0.05116560 -1.23186823
#> log(c2/c10) -0.94938011 -0.68152988 -2.59429189  0.70864624 -1.09511530
#> log(c3/c10)  0.13495979  0.02395642  0.81664955 -0.55216496  0.19535585
#> log(c4/c10)  0.04270789  0.05192734 -0.01391025  0.09977743  0.03769166
#> log(c5/c10) -0.04744648 -0.07984127  0.15149518 -0.24797426 -0.02982073
#> log(c6/c10) -0.88979476 -0.88625199 -0.91155148 -0.86786457 -0.89172235
#> log(c7/c10)  0.26668721  0.28415022  0.15944399  0.37478546  0.25718572
#> log(c8/c10)  0.16763619  0.10406171  0.55805742 -0.22589778  0.20222657
#> log(c9/c10) -0.50620232 -0.49205928 -0.59305703 -0.41865514 -0.51389744
#>                     s11         s12         s13        s14          s15
#> log(c1/c10) -0.50304830 -0.88441953 -2.46136774  0.7150784 -2.082732766
#> log(c2/c10)  0.01830423 -0.56431728 -2.97342391  1.8792386 -2.394982582
#> log(c3/c10) -0.26607114 -0.02461922  0.97377069 -1.0372857  0.734051132
#> log(c4/c10)  0.07601574  0.05596181 -0.02696003  0.1400694 -0.007049987
#> log(c5/c10) -0.16448177 -0.09401739  0.19734880 -0.3895500  0.127389984
#> log(c6/c10) -0.87699551 -0.88470166 -0.91656614 -0.8523815 -0.908915284
#> log(c7/c10)  0.32977727  0.29179212  0.13472574  0.4511045  0.172438343
#> log(c8/c10) -0.06204451  0.07624120  0.64804473 -0.5037389  0.510751180
#> log(c9/c10) -0.45510661 -0.48587022 -0.61307598 -0.3568455 -0.582533090
#>                     s16        s17         s18         s19         s20
#> log(c1/c10) -1.75089915  0.3116468 -1.49106459 -0.81987255 -0.74033589
#> log(c2/c10) -1.88803977  1.2629155 -1.49109004 -0.46570876 -0.34420045
#> log(c3/c10)  0.52396222 -0.7818670  0.35945700 -0.06548489 -0.11584076
#> log(c4/c10)  0.01039907  0.1188555  0.02406214  0.05935594  0.06353827
#> log(c5/c10)  0.06607846 -0.3150096  0.01806991 -0.10594346 -0.12063912
#> log(c6/c10) -0.90221011 -0.8605334 -0.89695979 -0.88339739 -0.88179024
#> log(c7/c10)  0.20548946  0.4109221  0.23136937  0.29822110  0.30614307
#> log(c8/c10)  0.39042787 -0.3574541  0.29621151  0.05283638  0.02399628
#> log(c9/c10) -0.55576547 -0.3893886 -0.53480571 -0.48066348 -0.47424760
#>                      s21         s22        s23         s24         s25
#> log(c1/c10) -1.786678493 -0.40509963  0.1197725 -0.62425056 -0.53518989
#> log(c2/c10) -1.942699935  0.16794059  0.9697886 -0.16685669 -0.03079853
#> log(c3/c10)  0.546614666 -0.32808394 -0.6603885 -0.18933615 -0.24572182
#> log(c4/c10)  0.008517656  0.08116625  0.1087660  0.06964247  0.07432562
#> log(c5/c10)  0.072689263 -0.18257934 -0.2795578 -0.14208773 -0.15854310
#> log(c6/c10) -0.902933085 -0.87501632 -0.8644105 -0.87944457 -0.87764498
#> log(c7/c10)  0.201925789  0.33953310  0.3918111  0.31770534  0.32657592
#> log(c8/c10)  0.403401506 -0.09756083 -0.2878802 -0.01809641 -0.05038993
#> log(c9/c10) -0.558651641 -0.44720550 -0.4048663 -0.46488348 -0.45769933
#>                    s26        s27          s28         s29        s30
#> log(c1/c10)  0.6102157  1.1396839 -1.919951213 -1.31893361  0.3830029
#> log(c2/c10)  1.7190397  2.5279092 -2.146300910 -1.22812523  1.3719262
#> log(c3/c10) -0.9708955 -1.3061099  0.630991653  0.25047826 -0.8270436
#> log(c4/c10)  0.1345553  0.1623968  0.001509677  0.03311344  0.1226076
#> log(c5/c10) -0.3701749 -0.4680026  0.097313511 -0.01373402 -0.3281938
#> log(c6/c10) -0.8545004 -0.8438018 -0.905626050 -0.89348163 -0.8590916
#> log(c7/c10)  0.4406600  0.4933958  0.188651628  0.24851388  0.4180293
#> log(c8/c10) -0.4657155 -0.6577014  0.451726372  0.23379659 -0.3833279
#> log(c9/c10) -0.3653043 -0.3225943 -0.569402189 -0.52092063 -0.3836326
#> 
#> , , 2
#> 
#>                      s1          s2           s3           s4          s5
#> log(c1/c10) -0.41831569  0.42099962 -0.677039474  0.243374436 -0.87703251
#> log(c2/c10)  0.27448437  1.14147635  0.007229097  0.957993920 -0.19935877
#> log(c3/c10)  0.20555435 -0.96498905  0.566381101 -0.717265709  0.84529956
#> log(c4/c10)  0.19803441  0.61491392  0.069528896  0.526689267 -0.02980564
#> log(c5/c10)  0.24536493  0.03589241  0.309936038  0.080223301  0.35984940
#> log(c6/c10) -0.47426246 -0.33780434 -0.516326457 -0.366683118 -0.54884186
#> log(c7/c10) -0.03065808  0.02153861 -0.046748008  0.010492173 -0.05918550
#> log(c8/c10) -0.11381960 -0.48672748  0.001131407 -0.407808588  0.08998833
#> log(c9/c10) -0.04815767  0.01774951 -0.068473937  0.003801503 -0.08417838
#>                      s6          s7          s8           s9         s10
#> log(c1/c10) -0.47655341 -0.37326782 -1.11084701  0.162797297 -0.53275028
#> log(c2/c10)  0.21432625  0.32101771 -0.44088337  0.874759728  0.15627627
#> log(c3/c10)  0.28677505  0.14272875  1.17138680 -0.604889543  0.36514950
#> log(c4/c10)  0.16910832  0.22040924 -0.14593896  0.486667410  0.14119589
#> log(c5/c10)  0.25989963  0.23412208  0.41820376  0.100333378  0.27392499
#> log(c6/c10) -0.48373090 -0.46693845 -0.58685604 -0.379783564 -0.49286754
#> log(c7/c10) -0.03427986 -0.02785657 -0.07372633  0.005481112 -0.03777472
#> log(c8/c10) -0.08794457 -0.13383437  0.19387214 -0.372008157 -0.06297630
#> log(c9/c10) -0.05273078 -0.04462029 -0.10253864 -0.002525812 -0.05714364
#>                     s11         s12         s13         s14         s15
#> log(c1/c10) -0.10340514 -0.32806953 -1.25704392  0.61418884 -1.03399145
#> log(c2/c10)  0.59977919  0.36770643 -0.59190116  1.34103603 -0.36149347
#> log(c3/c10) -0.23363276  0.07969337  1.37527897 -1.23441861  1.06420089
#> log(c4/c10)  0.35444733  0.24285877 -0.21855350  0.71086907 -0.10776557
#> log(c5/c10)  0.16677098  0.22284170  0.45469092 -0.01232288  0.39902250
#> log(c6/c10) -0.42306346 -0.45959000 -0.61062512 -0.30639513 -0.57436066
#> log(c7/c10) -0.01107391 -0.02504570 -0.08281826  0.03355298 -0.06894671
#> log(c8/c10) -0.25373439 -0.15391598  0.25882744 -0.57256147  0.15972521
#> log(c9/c10) -0.02342934 -0.04107110 -0.11401875  0.03291968 -0.09650357
#>                     s16         s17          s18         s19         s20
#> log(c1/c10) -0.83850949  0.37652877 -0.685441898 -0.29004514 -0.24319038
#> log(c2/c10) -0.15956544  1.09553906 -0.001450400  0.40698468  0.45538449
#> log(c3/c10)  0.79157377 -0.90296818  0.578099465  0.02666301 -0.03868255
#> log(c4/c10) -0.01067164  0.59282569  0.065355496  0.26174510  0.28501739
#> log(c5/c10)  0.35023499  0.04699124  0.312033077  0.21335174  0.20165795
#> log(c6/c10) -0.54257868 -0.34503453 -0.517692546 -0.45340789 -0.44579012
#> log(c7/c10) -0.05678976  0.01877299 -0.047270551 -0.02268098 -0.01976710
#> log(c8/c10)  0.07287255 -0.46696907  0.004864606 -0.17081021 -0.19162779
#> log(c9/c10) -0.08115336  0.01425744 -0.069133737 -0.03808523 -0.03440597
#>                     s21          s22          s23         s24         s25
#> log(c1/c10) -0.85958696 -0.045703936  0.263496285 -0.17480495 -0.12233963
#> log(c2/c10) -0.18133795  0.659383106  0.978779293  0.52602495  0.58022033
#> log(c3/c10)  0.82096928 -0.314105212 -0.745328461 -0.13405567 -0.20722594
#> log(c4/c10) -0.02114061  0.383106935  0.536683588  0.31898376  0.34504275
#> log(c5/c10)  0.35549541  0.152370172  0.075201381  0.18459062  0.17149656
#> log(c6/c10) -0.54600551 -0.413682248 -0.363411655 -0.43467183 -0.42614188
#> log(c7/c10) -0.05810056 -0.007485498  0.011743543 -0.01551424 -0.01225144
#> log(c8/c10)  0.08223728 -0.279371037 -0.416748727 -0.22201145 -0.24532179
#> log(c9/c10) -0.08280847 -0.018898357  0.005381569 -0.02903601 -0.02491617
#>                      s26         s27         s28         s29         s30
#> log(c1/c10)  0.552414609  0.86432238 -0.93809743 -0.58404017  0.41856436
#> log(c2/c10)  1.277224782  1.59941780 -0.26243732  0.10329507  1.13896078
#> log(c3/c10) -1.148265750 -1.58326506  0.93046319  0.43668048 -0.96159272
#> log(c4/c10)  0.680186426  0.83510789 -0.06013598  0.11572072  0.61370435
#> log(c5/c10)  0.003094453 -0.07475008  0.37508970  0.28672569  0.03650019
#> log(c6/c10) -0.316438546 -0.26572775 -0.55876995 -0.50120638 -0.33820028
#> log(c7/c10)  0.029711260  0.04910868 -0.06298310 -0.04096442  0.02138717
#> log(c8/c10) -0.545115169 -0.68369582  0.11711949 -0.04018819 -0.48564549
#> log(c9/c10)  0.028068861  0.05256140 -0.08897350 -0.06117117  0.01755828
#>