R markdown

library(dplyr) library(readr)

Load the movies dataset

movies <- read_csv(“https://gist.githubusercontent.com/tiangechen/b68782efa49a16edaf07dc2cdaa855ea/raw/0c794a9717f18b094eabab2cd6a6b9a226903577/movies.csv”)

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(readr)

# Load the movies dataset
movies <- read_csv("https://gist.githubusercontent.com/tiangechen/b68782efa49a16edaf07dc2cdaa855ea/raw/0c794a9717f18b094eabab2cd6a6b9a226903577/movies.csv")
## Rows: 77 Columns: 8
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (4): Film, Genre, Lead Studio, Worldwide Gross
## dbl (4): Audience score %, Profitability, Rotten Tomatoes %, Year
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.

1. rename(): (4 points)

Rename the “Film” column to “movie_title” and “Year” to “release_year”.

q1 <- movies %>%
   rename(movie_title = Film , release_year = Year)

head(q1)
## # A tibble: 6 × 8
##   movie_title               Genre `Lead Studio` `Audience score %` Profitability
##   <chr>                     <chr> <chr>                      <dbl>         <dbl>
## 1 Zack and Miri Make a Por… Roma… The Weinstei…                 70          1.75
## 2 Youth in Revolt           Come… The Weinstei…                 52          1.09
## 3 You Will Meet a Tall Dar… Come… Independent                   35          1.21
## 4 When in Rome              Come… Disney                        44          0   
## 5 What Happens in Vegas     Come… Fox                           72          6.27
## 6 Water For Elephants       Drama 20th Century…                 72          3.08
## # ℹ 3 more variables: `Rotten Tomatoes %` <dbl>, `Worldwide Gross` <chr>,
## #   release_year <dbl>

#2. select(): (4 points) #Create a new dataframe with only the columns: movie_title, release_year, Genre, Profitability,

q2 <- q1 %>%
  select(movie_title, release_year, Genre, Profitability,'Rotten Tomatoes %')

head(q2)
## # A tibble: 6 × 5
##   movie_title               release_year Genre Profitability `Rotten Tomatoes %`
##   <chr>                            <dbl> <chr>         <dbl>               <dbl>
## 1 Zack and Miri Make a Por…         2008 Roma…          1.75                  64
## 2 Youth in Revolt                   2010 Come…          1.09                  68
## 3 You Will Meet a Tall Dar…         2010 Come…          1.21                  43
## 4 When in Rome                      2010 Come…          0                     15
## 5 What Happens in Vegas             2008 Come…          6.27                  28
## 6 Water For Elephants               2011 Drama          3.08                  60

#3. filter(): (4 points) #Filter the dataset to include only movies released after 2000 with a Rotten Tomatoes % higher than 80.

q3 <- q2 %>%
  filter(release_year >2000, 'rotten tomatoes %' >80)

4. mutate(): (4 points)

Add a new column called “Profitability_millions” that converts the Profitability to millions of dollars.

q4 <- q3 %>%
  mutate(Profitability_millions = Profitability / 1e6)

5. arrange(): (3 points)

#Sort the filtered dataset by Rotten Tomatoes % in descending order, and then by Profitability in descending order. five <- four %>% arrange(desc(Rotten Tomatoes %) , desc(Profitability_millions))

q5 <- q4 %>%
  arrange(desc('Rotten Tomatoes %'), desc(Profitability_millions))
  
  head(q5)
## # A tibble: 6 × 6
##   movie_title               release_year Genre Profitability `Rotten Tomatoes %`
##   <chr>                            <dbl> <chr>         <dbl>               <dbl>
## 1 Fireproof                         2008 Drama         66.9                   40
## 2 High School Musical 3: S…         2008 Come…         22.9                   65
## 3 The Twilight Saga: New M…         2009 Drama         14.2                   27
## 4 Waitress                          2007 Roma…         11.1                   89
## 5 Twilight                          2008 Roma…         10.2                   49
## 6 Mamma Mia!                        2008 Come…          9.23                  53
## # ℹ 1 more variable: Profitability_millions <dbl>

#6. Combining functions: (3 points) #Use the pipe operator (%>%) to chain these operations together, starting with the original dataset and ending with a final dataframe that incorporates all the above transformations.

#7. Interpret question 6 (1 point) #From the resulting data, are the best movies the most popular?

# NO the best movies are not the most popular. For example, WALL-E is the highest rated movie however it didnt do as well as some lower rated movies in the box office