Import stock prices

stocks <- tq_get(c("AAPL", "NFLX", "AMZN"),
                 get = "stock.prices",
                 from = "2016-01-01")
                 
stocks
## # A tibble: 5,076 × 8
##    symbol date        open  high   low close    volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>     <dbl>    <dbl>
##  1 AAPL   2016-01-04  25.7  26.3  25.5  26.3 270597600     24.2
##  2 AAPL   2016-01-05  26.4  26.5  25.6  25.7 223164000     23.5
##  3 AAPL   2016-01-06  25.1  25.6  25.0  25.2 273829600     23.1
##  4 AAPL   2016-01-07  24.7  25.0  24.1  24.1 324377600     22.1
##  5 AAPL   2016-01-08  24.6  24.8  24.2  24.2 283192000     22.2
##  6 AAPL   2016-01-11  24.7  24.8  24.3  24.6 198957600     22.6
##  7 AAPL   2016-01-12  25.1  25.2  24.7  25.0 196616800     22.9
##  8 AAPL   2016-01-13  25.1  25.3  24.3  24.3 249758400     22.3
##  9 AAPL   2016-01-14  24.5  25.1  23.9  24.9 252680400     22.8
## 10 AAPL   2016-01-15  24.0  24.4  23.8  24.3 319335600     22.3
## # … with 5,066 more rows

Plot stock prices

stocks %>%
    
    ggplot(aes(x = date, y = adjusted, color = symbol)) +
    geom_line()

Apply the dplyr verbs you learned in chapter 5

Filter rows

stocks %>% filter(adjusted > 24)
## # A tibble: 4,964 × 8
##    symbol date        open  high   low close    volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>     <dbl>    <dbl>
##  1 AAPL   2016-01-04  25.7  26.3  25.5  26.3 270597600     24.2
##  2 AAPL   2016-03-15  26.0  26.3  26.0  26.1 160270800     24.1
##  3 AAPL   2016-03-16  26.2  26.6  26.1  26.5 153214000     24.4
##  4 AAPL   2016-03-17  26.4  26.6  26.2  26.5 137682800     24.4
##  5 AAPL   2016-03-18  26.6  26.6  26.3  26.5 176820800     24.4
##  6 AAPL   2016-03-21  26.5  26.9  26.3  26.5 142010800     24.4
##  7 AAPL   2016-03-22  26.3  26.8  26.3  26.7 129777600     24.6
##  8 AAPL   2016-03-23  26.6  26.8  26.5  26.5 102814000     24.5
##  9 AAPL   2016-03-24  26.4  26.6  26.2  26.4 104532000     24.4
## 10 AAPL   2016-03-28  26.5  26.5  26.3  26.3  77645600     24.2
## # … with 4,954 more rows

Arrange rows

stocks %>% filter(adjusted > 24)
## # A tibble: 4,964 × 8
##    symbol date        open  high   low close    volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>     <dbl>    <dbl>
##  1 AAPL   2016-01-04  25.7  26.3  25.5  26.3 270597600     24.2
##  2 AAPL   2016-03-15  26.0  26.3  26.0  26.1 160270800     24.1
##  3 AAPL   2016-03-16  26.2  26.6  26.1  26.5 153214000     24.4
##  4 AAPL   2016-03-17  26.4  26.6  26.2  26.5 137682800     24.4
##  5 AAPL   2016-03-18  26.6  26.6  26.3  26.5 176820800     24.4
##  6 AAPL   2016-03-21  26.5  26.9  26.3  26.5 142010800     24.4
##  7 AAPL   2016-03-22  26.3  26.8  26.3  26.7 129777600     24.6
##  8 AAPL   2016-03-23  26.6  26.8  26.5  26.5 102814000     24.5
##  9 AAPL   2016-03-24  26.4  26.6  26.2  26.4 104532000     24.4
## 10 AAPL   2016-03-28  26.5  26.5  26.3  26.3  77645600     24.2
## # … with 4,954 more rows

Selecet rows

stocks %>% filter(adjusted > 24)
## # A tibble: 4,964 × 8
##    symbol date        open  high   low close    volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>     <dbl>    <dbl>
##  1 AAPL   2016-01-04  25.7  26.3  25.5  26.3 270597600     24.2
##  2 AAPL   2016-03-15  26.0  26.3  26.0  26.1 160270800     24.1
##  3 AAPL   2016-03-16  26.2  26.6  26.1  26.5 153214000     24.4
##  4 AAPL   2016-03-17  26.4  26.6  26.2  26.5 137682800     24.4
##  5 AAPL   2016-03-18  26.6  26.6  26.3  26.5 176820800     24.4
##  6 AAPL   2016-03-21  26.5  26.9  26.3  26.5 142010800     24.4
##  7 AAPL   2016-03-22  26.3  26.8  26.3  26.7 129777600     24.6
##  8 AAPL   2016-03-23  26.6  26.8  26.5  26.5 102814000     24.5
##  9 AAPL   2016-03-24  26.4  26.6  26.2  26.4 104532000     24.4
## 10 AAPL   2016-03-28  26.5  26.5  26.3  26.3  77645600     24.2
## # … with 4,954 more rows

##Add columns

stocks %>% filter(adjusted > 24)
## # A tibble: 4,964 × 8
##    symbol date        open  high   low close    volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>     <dbl>    <dbl>
##  1 AAPL   2016-01-04  25.7  26.3  25.5  26.3 270597600     24.2
##  2 AAPL   2016-03-15  26.0  26.3  26.0  26.1 160270800     24.1
##  3 AAPL   2016-03-16  26.2  26.6  26.1  26.5 153214000     24.4
##  4 AAPL   2016-03-17  26.4  26.6  26.2  26.5 137682800     24.4
##  5 AAPL   2016-03-18  26.6  26.6  26.3  26.5 176820800     24.4
##  6 AAPL   2016-03-21  26.5  26.9  26.3  26.5 142010800     24.4
##  7 AAPL   2016-03-22  26.3  26.8  26.3  26.7 129777600     24.6
##  8 AAPL   2016-03-23  26.6  26.8  26.5  26.5 102814000     24.5
##  9 AAPL   2016-03-24  26.4  26.6  26.2  26.4 104532000     24.4
## 10 AAPL   2016-03-28  26.5  26.5  26.3  26.3  77645600     24.2
## # … with 4,954 more rows

##Summarize with groups

stocks %>% filter(adjusted > 24)
## # A tibble: 4,964 × 8
##    symbol date        open  high   low close    volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>     <dbl>    <dbl>
##  1 AAPL   2016-01-04  25.7  26.3  25.5  26.3 270597600     24.2
##  2 AAPL   2016-03-15  26.0  26.3  26.0  26.1 160270800     24.1
##  3 AAPL   2016-03-16  26.2  26.6  26.1  26.5 153214000     24.4
##  4 AAPL   2016-03-17  26.4  26.6  26.2  26.5 137682800     24.4
##  5 AAPL   2016-03-18  26.6  26.6  26.3  26.5 176820800     24.4
##  6 AAPL   2016-03-21  26.5  26.9  26.3  26.5 142010800     24.4
##  7 AAPL   2016-03-22  26.3  26.8  26.3  26.7 129777600     24.6
##  8 AAPL   2016-03-23  26.6  26.8  26.5  26.5 102814000     24.5
##  9 AAPL   2016-03-24  26.4  26.6  26.2  26.4 104532000     24.4
## 10 AAPL   2016-03-28  26.5  26.5  26.3  26.3  77645600     24.2
## # … with 4,954 more rows