mosaic v1.8.2


Monthly downloads



Project MOSAIC Statistics and Mathematics Teaching Utilities

Data sets and utilities from Project MOSAIC (<>) used to teach mathematics, statistics, computation and modeling. Funded by the NSF, Project MOSAIC is a community of educators working to tie together aspects of quantitative work that students in science, technology, engineering and mathematics will need in their professional lives, but which are usually taught in isolation, if at all.



Travis-CI Build Status

Purpose and design

The mosaic package is designed to facilitate the use of R in statistics and calculus instruction by providing a number of functions that (a) make many common tasks fit into a common template, and (b) simplify some tasks that would otherwise be too complicated for beginners.


You install from CRAN using


or from github with

devtools::install_github("ProjectMOSAIC/mosaic", build_vignettes = TRUE)

If you want to try out our developmental code (the beta branch), use

devtools::install_github("ProjectMOSAIC/mosaic", ref="beta")

Some features of the mosaic package have been split off into auxiliary packages. These include:

  • mosaicModel -- implements high-level systems for working with statistical models: effect-size calculation, bootstrapped confidence intervals, prediction error, graphics for models with multiple inputs. The package contains an introductory vignette.
  • mosaicCalc -- provides the calculus components of mosaic, including integration, differentiation, and differential equation solving. See Modeling-based calculus with R/mosaic for an instructor-oriented introduction and Start R in Calculus for a student-facing guide.

Install these packages using install.packages(c("mosaicCalc", "mosaicModel")) or from GitHub as described above.

Updates to the master github repository are more frequent than CRAN updates. Our beta branch is where we implement bug fixes most quickly and develop new features. We try to keep it pretty stable, but there may be a few rough edges, missing documentation, etc. while things are in progress.

If you discover a problem with any version of the package, be sure to let us know so that we can address it. Post an issue on github or send email to

Getting Started with mosaic

The package includes several vignettes to help you get started. One of these vignettes (Resources Related to the mosaic package) includes a list of many resources, both within the package and external to it. That's a good place to start.

Getting Help

Need help? Try posting a question on Stack Overflow using the tag r-mosaic.

Project MOSAIC

Project MOSAIC is a community of educators working to develop a new way to introduce mathematics, statistics, computation and modeling to students in colleges and universities.

Our goal: Provide a broader approach to quantitative studies that provides better support for work in science and technology. The focus of the project is to tie together better diverse aspects of quantitative work that students in science, technology, and engineering will need in their professional lives, but which are today usually taught in isolation, if at all.

  • Modeling. The ability to create, manipulate and investigate useful and informative mathematical representations of a real-world situations.
  • Statistics. The analysis of variability that draws on our ability to quantify uncertainty and to draw logical inferences from observations and experiment.
  • Computation. The capacity to think algorithmically, to manage data on large scales, to visualize and interact with models, and to automate tasks for efficiency, accuracy, and reproducibility.
  • Calculus. The traditional mathematical entry point for college and university students and a subject that still has the potential to provide important insights to today's students.

The name MOSAIC reflects the first letters --- M, S, C, C --- of these important components of a quantitative education. Project MOSAIC is motivated by a vision of quantitative education as a mosaic where the basic materials come together to form a complete and compelling picture.

Find out more about Project MOSAIC at [].

Functions in mosaic

Name Description
MAD All pairs mean and sum of absolute differences
MAD_ All pairs mean and sum of absolute differences
mean_ Aggregating functions
maggregate Aggregate for mosaic
Broyden Multi-Dimensional Root Finding
CIAdata Return a dataset based on the CIA World Factbook
TukeyHSD.lm Additional interfaces to TukeyHSD
adapt_seq Adaptively generate sequences in an interval
CIsim Compute confidence intervals from (multiple) simulated data sets
FunctionsFromData Create function from data
chisq Extract Chi-squared statistic
fortify.hclust mosaic tools for clustering
binom.test Exact Tests for Proportions
aggregatingFunction2 2-ary aggregating functions
aggregatingFunction1or2 1- or 2-ary aggregating functions
aggregatingFunction1 1-ary Aggregating functions
compareMean Defunct functions
deg2rad Convert between degrees and radians
expandFun Expand the left-hand side of a formula
factorize Conditionally convert vectors to factors
derivedVariable Create new variables from logicals
diffmean Difference in means and proportions
as.xtabs Convert objects to xtabs format
cnorm Central Probability in a Normal or T Distribution
inferArgs Infer arguments
cdist Central portion of a distribution
cull_for_do Cull objects used with do()
fetchData Defunct functions now in the fetch package
findZerosMult Find the zeros of a function of two or more variables
confint Confidence interval methods for output of resampling
fav_stats Some favorite statistical summaries
makeColorscheme Create a color generating function from a vector of colors
fitModel Fit a nonlinear least squares model
confint.htest Extract summary statistics
dotPlot Dotplots
findZeros Find zeros of functions
fitSpline Fit splines to data
dpqrdist Distribution wrapper
getVarFormula Extract data from a data frame using a formula interface
fortify.summary.lm Extract data from R objects
linear.algebra Functions for teaching linear algebra.
bargraph Create bar graphs from raw data
ashplot Average Shifted Histograms
mPlot Interactive plotting
googleMap Display a point on earth on a Google Map
makeMap Make a map with ggplot2
panel.lmbands show confidence and prediction bands on plots
xyz2latlon Convert back and forth between latitude/longitude and XYZ-space
is.wholenumber Check for whole number values
cross Factor cross products
cor_test.formula Alternative formula interface for cor.test
freqpolygon Frequency Polygons
docFile Return the path to a documentation file in a package
freqpoly Turn histograms into frequency polygons
do Do Things Repeatedly
mid midpoints along a sequence
.is.formula Check if formula
mosaic-package mosaic: the Project MOSAIC package
ladd Add to Lattice Plots
mUSMap Make a US map with ggplot2
panel.plotFun Panel function for plotting functions
mWorldMap Make a world map with ggplot2
panel.levelcontourplot Lattice plot that draws a filled contour plot
orrr Odds Ratio and Relative Risk for 2 x 2 Contingency Tables
plotModel Plot a regression model
plotFun Plotting mathematical expressions
plotPoints Scatter plot of points
mosaic.options Setting options for mosaic package functions
plotCumfreq Cumulative frequency plots
mplot Generic plotting
plotDist Plots of Discrete and Continuous Distributions
leaflet_map Simple Leaflet Maps
qdata_v The Data Distribution
project Projections
ntiles Create vector based on roughly equally sized groups
rescale Rescale
resample More Random Samples
pdist Illustrated probability calculations from distributions
panel.plotFun1 Panel function for plotting functions
qdata The Data Distribution
rspin Simulate spinning a spinner
read.file Read data files
qdist Illustrated quantile calculations from distributions
prop.test Exact and Approximate Tests for Proportions
statTally Tally test statistics
reexports Objects exported from other packages
rsquared Extract r-squared value
xpnorm Augmented versions of pnorm and qnorm
relm Resample a Linear Model
prop_test Internal function for testing proportion
surround Format strings for pretty output
theme.mosaic Lattice Theme
rflip Tossing Coins
t_test Student's t-Test
rand Random Regressors
standardName Standardization of Geographic Names
update_ci Update confidence interval
sp2df Transforms a shapefile into a dataframe
value Extract value from an object
zscore Compute z-scores
repeater-class Repeater objects
rstudio_is_available Check whether RStudio is in use
set.rseed Set seed in parallel compatible way
rfun Generate a natural-looking function
xqqmath Augmented version of qqmath
xchisq.test Augmented Chi-squared test
xhistogramBreaks Augmented histograms
rgeo-internals rgeo internal functions
theme_map ggplot2 theme for maps
swap Swap values among columns of a data frame
rlatlon Sample longitude and latitude on a sphere
No Results!

Vignettes of mosaic

No Results!

Last month downloads


Include our badge in your README