#### Overview of this book

Frequently the tool of choice for academics, R has spread deep into the private sector and can be found in the production pipelines at some of the most advanced and successful enterprises. The power and domain-specificity of R allows the user to express complex analytics easily, quickly, and succinctly. Starting with the basics of R and statistical reasoning, this book dives into advanced predictive analytics, showing how to apply those techniques to real-world data though with real-world examples. Packed with engaging problems and exercises, this book begins with a review of R and its syntax with packages like Rcpp, ggplot2, and dplyr. From there, get to grips with the fundamentals of applied statistics and build on this knowledge to perform sophisticated and powerful analytics. Solve the difficulties relating to performing data analysis in practice and find solutions to working with messy data, large data, communicating results, and facilitating reproducibility. This book is engineered to be an invaluable resource through many stages of anyone’s career as a data analyst.
Table of Contents (24 chapters)
Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
Free Chapter
RefresheR
The Shape of Data
Describing Relationships
Probability
Using Data To Reason About The World
Testing Hypotheses
Bayesian Methods
The Bootstrap
Predicting Continuous Variables
Predicting Categorical Variables
Predicting Changes with Time
Sources of Data
Dealing with Missing Data
Dealing with Messy Data
Dealing with Large Data
Working with Popular R Packages
Reproducibility and Best Practices
Other Books You May Enjoy
Index

## Estimating means

In the example that is going to span this entire chapter, we are going to be examining how we would estimate the mean height of all US women using only samples. Specifically, we will be estimating the population parameters using samples means as an estimator.

I am going to use the vector `all.us.women` to represent the population. For simplicity's sake, let's say there are only 10,000 US women:

``` > # setting seed will make random number generation reproducible
> set.seed(1)
> all.us.women <- rnorm(10000, mean=65, sd=3.5) ```

We have just created a vector of 10,000 normally distributed random variables with the same parameters as our population of interest using the `rnorm` function. Of course, at this point, we can just call `mean` on this vector and call it a day—but that's cheating! We are going to see that we can get really really close to the population mean without actually using the entire population.

Now, let's take a random sample of ten from this population using...