Use the given code below to answer the questions.
## ── Attaching packages ───────────────────────────────────────────────── tidyverse 1.2.1 ──
## ✔ ggplot2 3.2.1 ✔ purrr 0.3.2
## ✔ tibble 2.1.3 ✔ dplyr 0.8.3
## ✔ tidyr 0.8.3 ✔ stringr 1.4.0
## ✔ readr 1.3.1 ✔ forcats 0.4.0
## ── Conflicts ──────────────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## Loading required package: lubridate
##
## Attaching package: 'lubridate'
## The following object is masked from 'package:base':
##
## date
## Loading required package: PerformanceAnalytics
## Loading required package: xts
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Registered S3 method overwritten by 'xts':
## method from
## as.zoo.xts zoo
##
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
##
## first, last
##
## Attaching package: 'PerformanceAnalytics'
## The following object is masked from 'package:graphics':
##
## legend
## Loading required package: quantmod
## Loading required package: TTR
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
## Version 0.4-0 included new data defaults. See ?getSymbols.
## Load package
library(tidyverse) # for cleaning, plotting, etc
library(tidyquant) # for financial analysis
## Import data
stocks <- tq_get("MSFT", get = "stock.prices", from = "2016-01-01")
stocks
## # A tibble: 922 x 7
## date open high low close volume adjusted
## <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2016-01-04 54.3 54.8 53.4 54.8 53778000 50.7
## 2 2016-01-05 54.9 55.4 54.5 55.0 34079700 50.9
## 3 2016-01-06 54.3 54.4 53.6 54.0 39518900 50.0
## 4 2016-01-07 52.7 53.5 52.1 52.2 56564900 48.3
## 5 2016-01-08 52.4 53.3 52.2 52.3 48754000 48.4
## 6 2016-01-11 52.5 52.8 51.5 52.3 36943800 48.4
## 7 2016-01-12 52.8 53.1 52.1 52.8 36095500 48.8
## 8 2016-01-13 53.8 54.1 51.3 51.6 66883600 47.8
## 9 2016-01-14 52 53.4 51.6 53.1 52381900 49.1
## 10 2016-01-15 51.3 52.0 50.3 51.0 71820700 47.2
## # … with 912 more rows
glimpse(stocks)
## Observations: 922
## Variables: 7
## $ date <date> 2016-01-04, 2016-01-05, 2016-01-06, 2016-01-07, 2016-0…
## $ open <dbl> 54.32, 54.93, 54.32, 52.70, 52.37, 52.51, 52.76, 53.80,…
## $ high <dbl> 54.80, 55.39, 54.40, 53.49, 53.28, 52.85, 53.10, 54.07,…
## $ low <dbl> 53.39, 54.54, 53.64, 52.07, 52.15, 51.46, 52.06, 51.30,…
## $ close <dbl> 54.80, 55.05, 54.05, 52.17, 52.33, 52.30, 52.78, 51.64,…
## $ volume <dbl> 53778000, 34079700, 39518900, 56564900, 48754000, 36943…
## $ adjusted <dbl> 50.70846, 50.93979, 50.01446, 48.27483, 48.42288, 48.39…
data,open,high,low,close,volume,adjusted
numerics, integers, logical, characters.
922
stocks
## Visualize
stocks %>%
ggplot(aes(x = date, y = close)) +
geom_line()