# Transform {#sec-transform-intro .unnumbered}

```{r}
#| results: "asis"
#| echo: false
source("_common.R")
```

In this part of the book, you'll learn about various types of data the columns of a data frame can contain and how to transform them.
The transformations you might want to apply to a column vary depending on the type of data you're working with, for example if you have text strings you might want to extract or remove certain pieces while if you have numerical data, you might want to rescale them.
You've already learned a little about data wrangling in the previous part.
Now we'll focus on new skills for specific types of data you will frequently encounter in practice.

<!--# TO DO: Add a diagram? -->

This part of the book proceeds as follows:

-   In @sec-tibbles, you'll learn about the variant of the data frame that we use in this book: the **tibble**.
    You'll learn what makes them different from regular data frames, and how you can construct them "by hand".

-   @sec-joins will give you tools for working with multiple interrelated datasets.

-   @sec-numbers ...

-   @sec-logicals ...

-   @sec-missing-values...

-   @sec-strings will give you tools for working with strings and introduce regular expressions, a powerful tool for manipulating strings.

-   @sec-regular-expressions ...

-   @sec-factors will introduce factors -- how R stores categorical data.
    They are used when a variable has a fixed set of possible values, or when you want to use a non-alphabetical ordering of a string.

-   @sec-dates-and-times will give you the key tools for working with dates and date-times.

<!-- TO DO: Add chapter descriptions -->
