Import stock prices

stocks <- tq_get(c("MCD", "META"),
                 get = "stock.prices",
                 from = "2016-01-01",
                 to = "2018-01-01")
stocks
## # A tibble: 1,006 × 8
##    symbol date        open  high   low close   volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>    <dbl>    <dbl>
##  1 MCD    2016-01-04  117.  118.  116.  118.  9995000     95.4
##  2 MCD    2016-01-05  117.  119.  117.  119.  6314000     96.8
##  3 MCD    2016-01-06  118   119.  118.  118.  6543800     96.1
##  4 MCD    2016-01-07  117.  118.  116.  116.  7477900     93.9
##  5 MCD    2016-01-08  116.  117.  115.  115.  6103400     93.7
##  6 MCD    2016-01-11  116.  117.  116.  117.  6392400     94.7
##  7 MCD    2016-01-12  117.  118.  116.  117.  5639700     95.3
##  8 MCD    2016-01-13  118.  118.  115.  115.  6986000     93.4
##  9 MCD    2016-01-14  116.  117.  113   117.  9204500     94.7
## 10 MCD    2016-01-15  114.  116.  114.  115. 10201900     93.5
## # ℹ 996 more rows

Plot stock prices

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

Apply the dplyer verbs you learned in charpter 5

Filter Rows

stocks %>% filter(adjusted > 115)
## # A tibble: 580 × 8
##    symbol date        open  high   low close   volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>    <dbl>    <dbl>
##  1 MCD    2017-04-25  138.  142.  137.  142. 10893800     119.
##  2 MCD    2017-04-26  142.  142   140.  141.  7132200     119.
##  3 MCD    2017-04-27  142.  143.  141.  141.  5183700     119.
##  4 MCD    2017-04-28  140.  141.  140.  140.  4779900     118.
##  5 MCD    2017-05-01  140.  141.  140.  141.  3747200     119.
##  6 MCD    2017-05-02  141.  142.  141.  141.  3774100     119.
##  7 MCD    2017-05-03  142.  143.  141.  143.  4278400     120.
##  8 MCD    2017-05-04  143.  144.  142.  143.  4178800     121.
##  9 MCD    2017-05-05  143.  144.  143.  144.  2452700     121.
## 10 MCD    2017-05-08  144.  144.  144.  144.  2813000     122.
## # ℹ 570 more rows

Arrange rows

arrange(stocks, desc(high), desc(low))
## # A tibble: 1,006 × 8
##    symbol date        open  high   low close   volume adjusted
##    <chr>  <date>     <dbl> <dbl> <dbl> <dbl>    <dbl>    <dbl>
##  1 META   2017-11-28  184.  184.  182.  182. 14379700     182.
##  2 META   2017-11-27  183.  184.  182.  183. 12344500     183.
##  3 META   2017-11-24  180.  183.  180.  183.  9426300     182.
##  4 META   2017-11-01  182.  183.  181.  183. 40918300     182.
##  5 META   2017-12-08  182.  182.  179.  179  19883800     179.
##  6 META   2017-11-29  182.  182.  174   175. 41933500     175.
##  7 META   2017-11-02  181.  182.  177.  179. 35529900     179.
##  8 META   2017-11-21  179.  182.  179.  182. 14504000     181.
##  9 META   2017-11-22  181.  182.  180.  181. 10376300     180.
## 10 META   2017-12-18  181.  181.  180.  181. 17265400     180.
## # ℹ 996 more rows

Select Rows

select(stocks, date, open)
## # A tibble: 1,006 × 2
##    date        open
##    <date>     <dbl>
##  1 2016-01-04  117.
##  2 2016-01-05  117.
##  3 2016-01-06  118 
##  4 2016-01-07  117.
##  5 2016-01-08  116.
##  6 2016-01-11  116.
##  7 2016-01-12  117.
##  8 2016-01-13  118.
##  9 2016-01-14  116.
## 10 2016-01-15  114.
## # ℹ 996 more rows
select(stocks, date, open, high, low)
## # A tibble: 1,006 × 4
##    date        open  high   low
##    <date>     <dbl> <dbl> <dbl>
##  1 2016-01-04  117.  118.  116.
##  2 2016-01-05  117.  119.  117.
##  3 2016-01-06  118   119.  118.
##  4 2016-01-07  117.  118.  116.
##  5 2016-01-08  116.  117.  115.
##  6 2016-01-11  116.  117.  116.
##  7 2016-01-12  117.  118.  116.
##  8 2016-01-13  118.  118.  115.
##  9 2016-01-14  116.  117.  113 
## 10 2016-01-15  114.  116.  114.
## # ℹ 996 more rows
select(stocks, date, open, high, low, close)
## # A tibble: 1,006 × 5
##    date        open  high   low close
##    <date>     <dbl> <dbl> <dbl> <dbl>
##  1 2016-01-04  117.  118.  116.  118.
##  2 2016-01-05  117.  119.  117.  119.
##  3 2016-01-06  118   119.  118.  118.
##  4 2016-01-07  117.  118.  116.  116.
##  5 2016-01-08  116.  117.  115.  115.
##  6 2016-01-11  116.  117.  116.  117.
##  7 2016-01-12  117.  118.  116.  117.
##  8 2016-01-13  118.  118.  115.  115.
##  9 2016-01-14  116.  117.  113   117.
## 10 2016-01-15  114.  116.  114.  115.
## # ℹ 996 more rows
select(stocks, date, open, high, low, close, volume, adjusted)
## # A tibble: 1,006 × 7
##    date        open  high   low close   volume adjusted
##    <date>     <dbl> <dbl> <dbl> <dbl>    <dbl>    <dbl>
##  1 2016-01-04  117.  118.  116.  118.  9995000     95.4
##  2 2016-01-05  117.  119.  117.  119.  6314000     96.8
##  3 2016-01-06  118   119.  118.  118.  6543800     96.1
##  4 2016-01-07  117.  118.  116.  116.  7477900     93.9
##  5 2016-01-08  116.  117.  115.  115.  6103400     93.7
##  6 2016-01-11  116.  117.  116.  117.  6392400     94.7
##  7 2016-01-12  117.  118.  116.  117.  5639700     95.3
##  8 2016-01-13  118.  118.  115.  115.  6986000     93.4
##  9 2016-01-14  116.  117.  113   117.  9204500     94.7
## 10 2016-01-15  114.  116.  114.  115. 10201900     93.5
## # ℹ 996 more rows

Add columns

Summarise with groups