**INTRODUCTION TO PROGRAMMING IN R > MISSION 5 > DATAFRAMES IN R**

# Working with Data Frames

In the past few missions, you worked with vectors, matrices, and lists, which are important data structures in R. In this lesson, you will learn another data structure in R: the dataframe.

Dataframes are probably the most common structures you'll work with when analyzing data in R, so we'll help you to build a strong foundational understanding of how to manipulate them. Like lists, data frames can contain multiple data types. Unlike lists, though, all elements of a dataframe must be vectors of equal length.

In this lesson, you'll also get introduced to some R packages designed to make doing data science with dataframes more efficient. Packages are user-contributed extensions that build on R’s base functionalities; they often include functions, code, and data that make working in R easier. While learning about dataframes, you'll learn about two packages, `readr` and `dplyr`, that are part of a "family" of packages collectively referred to by the R community as the tidyverse.

By the end of this lesson, you will have learned how to install packages in R, how to import data into R, filtering a dataframe, what a tibble is, how to index data frames, and how to select a single or multiple dataframe columns.

#### Objectives

#### Mission Outline

1. Introduction to Data Frames

2. Installing Packages

3. Importing Data into R

4. Tibbles: Specialized Data Frames

5. Indexing Data Frames

6. Selecting Data Columns

7. Adding a New Column

8. Filtering by a Single Condition

9. Filtering by Multiple Conditions: Meeting At Least One Criterion

10. Filtering by Multiple Conditions

11. Arranging Data Frames by Variables

12. Next Steps

13. Takeaways