RegressionAndOtherStories.jl v0.3.3
Project Status | Build Status |
---|---|
Purpose (once completed, maybe late 2022)
RegressionAndOtherStories.jl contains supporting (Julia) functions and the data files used in "Regression and Other Stories" by Andrew Gelham, Jennifer Hill and Aki Vehtari.
Contents
The supporting functions are intended to be used in (currently) 2 Julia projects (also under development), ROSStanPluto.jl and ROSTuringPluto.jl. See the lists of exported and not exported funtiens at the end of this file.
All data files are in .csv
format and located in the data
directory.
If RegressionAndOtherStories.jl is loaded, the files can be read in as a DataFrame using:
hibbs = CSV.read(ros_datadir("ElectionsEconomy", "hibbs.csv"), DataFrame)
For that purpose ros_datadir()
is exported.
If needed, Stata files (.dat
) have been converted to .csv
files using the scripts in the scripts
directory, e.g. see scripts\hdi.jl
. To access the Stata files in the R package ROS-Examples
RegressionAndOtherStories.jl expects the environment variable JULIA_ROS_HOME
to be defined, e.g.:
ENV["JULIA_ROS_HOME"] = expanduser("~/Projects/R/ROS-Examples")
R itself does not necessarily need to be installed for this to work. The ROS-Examples package can be found here.
If so desired, direct use of the Stata files is also possible as the Stata to .csv file conversion scripts mentioned above show.
Approach
The initial approach I attempted in RegressionAndOtherStories.jl (v0,2) and associated projects was different from StatisticalRethinking.jl. But that approach did not work out as I expected, so I will switch to a similiar setup as in StatisticalRethinking.jl using Requires.jl from v0.3 onwards.
In particular Turing, Stan, Makie and AlgebraOfGraphics, if needed, will all be included using Requires.jl.
Over time I might minimize the use of AlgebraOfGraphics.jl. It is a nice package but also a bit more difficult to tailor (compared to Makie/GLMakie).
For testing puposes the packages enabled using Requires.jl will move to the test section of RegrassionAndOtherStories.jl.
In doing this I will move over several important functions from StatisticalRethinking.jl as well, e.g. link()
.
I expect I can use ParetoSmoothedImportanceSampling.jl and StructuralCausalModels.jl as is.
Issues, comments and questions
Please file issues, comments and questions here.
Pull requests are also welcome.
Versions
Release 0.3.4
- Is tagging using JuliaHub with setting branch name working?
Version 0.3.3
- Add initial version of notebook maintenance routines.
- Tag this version (if not done by TagBot)
Version 0.3.2
- Fix Makie and AoG glue scripts.
Version 0.3.1
- StatsFuns compat entry to 1.0.
Version 0.3.0 (under development)
- Switch back to using Requires.jl
- Switch to using
eachindex()
where appropriate. - Experimental versions for chapter 3.
Version 0.2.4
- Chapter 2 mostly done
- Added trankplot function
Version 0.2.0
- Support for the 5 examples from chapter 1 done.
- Added plot_chains() and model_summary() functions.
- Added Makie and AlgebraOfGraphics as dependencies.
Note: Source files for Makie/AoG are all in src/Makie/ to simplify moving those to a separate repo (not my intention right now, but still).
- In sync with both ROS[Turing|Stan]Pluto projects tagged 2.3 and up.
Version 0.1.0
- Initial commit (to registrate the package for usage in projects).
References
Of course this package is focused on:
which in a sense is a major update to item 3. below.
There is no shortage of other good books on Bayesian statistics. A few of my favorites are:
-
Gelman, Hill: Data Analysis Using Regression and Multilevel/Hierarchical Models
-
Betancourt: A Conceptual Introduction to Hamiltonian Monte Carlo
-
Pearl, Glymour, Jewell: Causal Inference in Statistics: A Primer
A good book to understand most of the Julia constructs used in this book is:
Functions defined in this package:
Currently (v0.3.0) exported functions (see online help)
- ros_path
- ros_data
- ros_datadir
- plot_chains
- model_summary
- trankplot
Currently not exported functions (see online help)
- rank_vector
- bin_vector
All documentation is on-line.