Book Image

Data Wrangling with R

By : Gustavo R Santos
Book Image

Data Wrangling with R

By: Gustavo R Santos

Overview of this book

In this information era, where large volumes of data are being generated every day, companies want to get a better grip on it to perform more efficiently than before. This is where skillful data analysts and data scientists come into play, wrangling and exploring data to generate valuable business insights. In order to do that, you’ll need plenty of tools that enable you to extract the most useful knowledge from data. Data Wrangling with R will help you to gain a deep understanding of ways to wrangle and prepare datasets for exploration, analysis, and modeling. This data book enables you to get your data ready for more optimized analyses, develop your first data model, and perform effective data visualization. The book begins by teaching you how to load and explore datasets. Then, you’ll get to grips with the modern concepts and tools of data wrangling. As data wrangling and visualization are intrinsically connected, you’ll go over best practices to plot data and extract insights from it. The chapters are designed in a way to help you learn all about modeling, as you will go through the construction of a data science project from end to end, and become familiar with the built-in RStudio, including an application built with Shiny dashboards. By the end of this book, you’ll have learned how to create your first data model and build an application with Shiny in R.
Table of Contents (21 chapters)
1
Part 1: Load and Explore Data
5
Part 2: Data Wrangling
12
Part 3: Data Visualization
16
Part 4: Modeling

Time series plots

A time series is a sequence of data points ordered by time. In a time series, the data points are measurements of any given variable throughout time, such as days, hours, months, or any other time frame. We can visualize time series using ggplot2 as long as the dataset contains a datetime variable. The best way to visualize data organized by time is with line plots. Let’s set a seed so you can reproduce the same results as mine for the random numbers. Create a sample dataframe and then see how to visualize a time series:

# Set seed to reproduce the same random numbers
set.seed(10)
# Creating a Dataset
ts <- data.frame(
  date = seq(ymd('2022-01-01'),ymd('2022-06-30'),by='days'),
  measure = as.integer(runif(181, min=600,  max= 1000) + sort(rexp(181,0.001)))

The preceding code is a data.frame object where we are assigning a sequence of dates to the name date from January 1 to June 3, 2022,...