greta-dev / greta-dev/greta

better print method for calculate results

Open
#650 1 comment 0 reactions 0 assignees View on GitHub
Up Next
Dominant language
C++
Stars
607
Forks
67
Avg merge
3d 8h
Merged PRs (30d)
1

Description

Current behaviour is:

``` r
library(greta)
#>
#> Attaching package: 'greta'
#> The following objects are masked from 'package:stats':
#>
#> binomial, cov2cor, poisson
#> The following objects are masked from 'package:base':
#>
#> %*%, apply, backsolve, beta, chol2inv, colMeans, colSums, diag,
#> eigen, forwardsolve, gamma, identity, rowMeans, rowSums, sweep,
#> tapply
x <- normal(0,1)
#> ℹ Initialising python and checking dependencies, this may take a moment.
#> ✔ Initialising python and checking dependencies ... done!
#>
calculate(x, nsim = 100)
#> $x
#> , , 1
#>
#> [,1]
#> [1,] 0.871772868
#> [2,] 0.306786637
#> [3,] 1.791197869
#> [4,] 1.112477489
#> [5,] 0.467661927
#> [6,] -0.611870958
#> [7,] 0.168549749
#> [8,] 1.522326716
#> [9,] 0.559560693
#> [10,] 0.010798832
#> [11,] -0.532454980
#> [12,] -0.312583401
#> [13,] 0.939277589
#> [14,] -1.027710347
#> [15,] -0.550986206
#> [16,] 0.476108669
#> [17,] 0.117324528
#> [18,] 0.382535337
#> [19,] -0.642447783
#> [20,] -0.358183149
#> [21,] -2.115516615
#> [22,] -0.272591789
#> [23,] 0.301627679
#> [24,] 0.004522991
#> [25,] 0.006910879
#> [26,] 0.324151157
#> [27,] -0.911353546
#> [28,] -1.933190160
#> [29,] -1.643231391
#> [30,] -0.015106264
#> [31,] -1.125364481
#> [32,] -1.632161474
#> [33,] -0.278987896
#> [34,] -1.725229564
#> [35,] -1.118451115
#> [36,] 0.285303576
#> [37,] -0.359218106
#> [38,] 0.690484783
#> [39,] 1.456693098
#> [40,] -0.152138739
#> [41,] 1.157385941
#> [42,] 0.644566475
#> [43,] 0.682869074
#> [44,] 2.125711726
#> [45,] -0.503304401
#> [46,] 0.721361284
#> [47,] -0.859704923
#> [48,] -0.472898900
#> [49,] -0.599194173
#> [50,] 1.141385520
#> [51,] 0.950332785
#> [52,] 1.587672586
#> [53,] 0.499874158
#> [54,] 0.182039301
#> [55,] 1.884974786
#> [56,] -0.036219035
#> [57,] -0.296482902
#> [58,] -0.958812235
#> [59,] -1.174025824
#> [60,] 0.285431011
#> [61,] 0.263515811
#> [62,] -0.099273216
#> [63,] 0.593192435
#> [64,] 0.098608069
#> [65,] 0.369655545
#> [66,] -0.350396437
#> [67,] 0.092364272
#> [68,] -0.011151898
#> [69,] 0.888325762
#> [70,] 0.866725297
#> [71,] 0.107192904
#> [72,] 1.206863875
#> [73,] -0.003753086
#> [74,] -1.673486765
#> [75,] 0.909253050
#> [76,] -0.990701495
#> [77,] 1.711923927
#> [78,] 0.168429410
#> [79,] -1.234041007
#> [80,] 0.249892409
#> [81,] -1.290222760
#> [82,] 0.259738169
#> [83,] -1.202769092
#> [84,] -1.020504754
#> [85,] -0.745010296
#> [86,] 0.843300717
#> [87,] 0.742750244
#> [88,] -0.965856174
#> [89,] -0.404233310
#> [90,] 0.036691827
#> [91,] -0.741174505
#> [92,] -0.264497551
#> [93,] 0.929946596
#> [94,] 1.118240754
#> [95,] 1.009428812
#> [96,] 0.399524098
#> [97,] -0.689098699
#> [98,] 0.513607752
#> [99,] -0.252917597
#> [100,] 0.408466078
```

Created on 2024-07-30 with [reprex v2.1.0](https://reprex.tidyverse.org)

Session info

``` r
sessioninfo::session_info()
#> ─ Session info ───────────────────────────────────────────────────────────────
#> setting value
#> version R version 4.4.0 (2024-04-24)
#> os macOS Sonoma 14.5
#> system aarch64, darwin20
#> ui X11
#> language (EN)
#> collate en_US.UTF-8
#> ctype en_US.UTF-8
#> tz Australia/Hobart
#> date 2024-07-30
#> pandoc 3.2.1 @ /opt/homebrew/bin/ (via rmarkdown)
#>
#> ─ Packages ───────────────────────────────────────────────────────────────────
#> package * version date (UTC) lib source
#> backports 1.5.0 2024-05-23 [1] CRAN (R 4.4.0)
#> base64enc 0.1-3 2015-07-28 [1] CRAN (R 4.4.0)
#> callr 3.7.6 2024-03-25 [1] CRAN (R 4.4.0)
#> cli 3.6.3 2024-06-21 [1] CRAN (R 4.4.0)
#> coda 0.19-4.1 2024-01-31 [1] CRAN (R 4.4.0)
#> codetools 0.2-20 2024-03-31 [2] CRAN (R 4.4.0)
#> crayon 1.5.3 2024-06-20 [1] CRAN (R 4.4.0)
#> digest 0.6.36 2024-06-23 [1] CRAN (R 4.4.0)
#> evaluate 0.24.0 2024-06-10 [1] CRAN (R 4.4.0)
#> fastmap 1.2.0 2024-05-15 [1] CRAN (R 4.4.0)
#> fs 1.6.4.9000 2024-06-26 [1] Github (r-lib/fs@714990b)
#> future 1.33.2 2024-03-26 [1] CRAN (R 4.4.0)
#> globals 0.16.3 2024-03-08 [1] CRAN (R 4.4.0)
#> glue 1.7.0 2024-01-09 [1] CRAN (R 4.4.0)
#> greta * 0.4.5.9000 2024-07-29 [1] local
#> hms 1.1.3 2023-03-21 [1] CRAN (R 4.4.0)
#> htmltools 0.5.8.1 2024-04-04 [1] CRAN (R 4.4.0)
#> jsonlite 1.8.8 2023-12-04 [1] CRAN (R 4.4.0)
#> knitr 1.48 2024-07-07 [1] CRAN (R 4.4.0)
#> lattice 0.22-6 2024-03-20 [2] CRAN (R 4.4.0)
#> lifecycle 1.0.4 2023-11-07 [1] CRAN (R 4.4.0)
#> listenv 0.9.1 2024-01-29 [1] CRAN (R 4.4.0)
#> magrittr 2.0.3 2022-03-30 [1] CRAN (R 4.4.0)
#> Matrix 1.7-0 2024-03-22 [2] CRAN (R 4.4.0)
#> parallelly 1.37.1 2024-02-29 [1] CRAN (R 4.4.0)
#> pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.4.0)
#> png 0.1-8 2022-11-29 [1] CRAN (R 4.4.0)
#> prettyunits 1.2.0 2023-09-24 [1] CRAN (R 4.4.0)
#> processx 3.8.4 2024-03-16 [1] CRAN (R 4.4.0)
#> progress 1.2.3 2023-12-06 [1] CRAN (R 4.4.0)
#> ps 1.7.7 2024-07-02 [1] CRAN (R 4.4.0)
#> purrr 1.0.2 2023-08-10 [1] CRAN (R 4.4.0)
#> R.cache 0.16.0 2022-07-21 [1] CRAN (R 4.4.0)
#> R.methodsS3 1.8.2 2022-06-13 [1] CRAN (R 4.4.0)
#> R.oo 1.26.0 2024-01-24 [1] CRAN (R 4.4.0)
#> R.utils 2.12.3 2023-11-18 [1] CRAN (R 4.4.0)
#> R6 2.5.1 2021-08-19 [1] CRAN (R 4.4.0)
#> Rcpp 1.0.12 2024-01-09 [1] CRAN (R 4.4.0)
#> reprex 2.1.0 2024-01-11 [1] CRAN (R 4.4.0)
#> reticulate 1.36.1 2024-04-22 [1] CRAN (R 4.4.0)
#> rlang 1.1.4 2024-06-04 [1] CRAN (R 4.4.0)
#> rmarkdown 2.27 2024-05-17 [1] CRAN (R 4.4.0)
#> rstudioapi 0.16.0 2024-03-24 [1] CRAN (R 4.4.0)
#> sessioninfo 1.2.2 2021-12-06 [1] CRAN (R 4.4.0)
#> styler 1.10.3 2024-04-07 [1] CRAN (R 4.4.0)
#> tensorflow 2.16.0 2024-04-15 [1] CRAN (R 4.4.0)
#> tfautograph 0.3.2 2021-09-17 [1] CRAN (R 4.4.0)
#> tfruns 1.5.3 2024-04-19 [1] CRAN (R 4.4.0)
#> vctrs 0.6.5 2023-12-01 [1] CRAN (R 4.4.0)
#> whisker 0.4.1 2022-12-05 [1] CRAN (R 4.4.0)
#> withr 3.0.0 2024-01-16 [1] CRAN (R 4.4.0)
#> xfun 0.45 2024-06-16 [1] CRAN (R 4.4.0)
#> yaml 2.3.9 2024-07-05 [1] CRAN (R 4.4.0)
#>
#> [1] /Users/nick/Library/R/arm64/4.4/library
#> [2] /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/library
#>
#> ─ Python configuration ───────────────────────────────────────────────────────
#> python: /Users/nick/Library/r-miniconda-arm64/envs/greta-env-tf2/bin/python
#> libpython: /Users/nick/Library/r-miniconda-arm64/envs/greta-env-tf2/lib/libpython3.11.dylib
#> pythonhome: /Users/nick/Library/r-miniconda-arm64/envs/greta-env-tf2:/Users/nick/Library/r-miniconda-arm64/envs/greta-env-tf2
#> version: 3.11.9 | packaged by conda-forge | (main, Apr 19 2024, 18:34:54) [Clang 16.0.6 ]
#> numpy: /Users/nick/Library/r-miniconda-arm64/envs/greta-env-tf2/lib/python3.11/site-packages/numpy
#> numpy_version: 1.26.4
#> tensorflow: /Users/nick/Library/r-miniconda-arm64/envs/greta-env-tf2/lib/python3.11/site-packages/tensorflow
#>
#> NOTE: Python version was forced by use_python() function
#>
#> ──────────────────────────────────────────────────────────────────────────────
```

This output floods the console and it can sometimes be confusing as a new user to know how to access calculate results.

A new print method would:

- Be shorter - similar to new greta array/mcmc methods (#645 and #647)
- Provide instructions on how to subset/use results

Related to #481

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.