Description
Vector Representing a Random Variable.
Description
Random vectors, called rvecs. An rvec holds multiple draws, but tries to behave like a standard R vector, including working well in data frames. Rvecs are useful for working with output from a simulation or a Bayesian analysis.
README.md
rvec
Tools for working with random draws, including draws from a simulation or Bayesian analysis. The main data structure is an rvec
, which holds multiple draws but which behaves (mainly) like a standard R vector.
Installation
install.packages("rvec") ## CRAN version
devtools::install_github("bayesiandemography/rvec") ## development version
Example
library(rvec, warn.conflicts = FALSE)
library(dplyr, warn.conflicts = FALSE)
Create an rvec
.
x <- rvec(rbind(c(10, 11),
c(100, 101),
c(1000, 1001)))
x
#> <rvec_dbl<2>[3]>
#> [1] 10,11 100,101 1000,1001
Perform arithmetic on it.
x + 1
#> <rvec_dbl<2>[3]>
#> [1] 11,12 101,102 1001,1002
Put it in a tibble.
df <- tibble(g = c(1, 2, 1), x)
df
#> # A tibble: 3 × 2
#> g x
#> <dbl> <rdbl<2>>
#> 1 1 10,11
#> 2 2 100,101
#> 3 1 1000,1001
Manipulate it in a tibble.
df %>%
group_by(g) %>%
count(wt = x)
#> # A tibble: 2 × 2
#> # Groups: g [2]
#> g n
#> <dbl> <rdbl<2>>
#> 1 1 1010,1012
#> 2 2 100,101
Summarise it.
draws_mean(x)
#> [1] 10.5 100.5 1000.5