[R-SIG-Finance] Web Scraping of SPY Stocks

AIE ATUMA gttg@2000 @end|ng |rom y@hoo@com
Sat Sep 26 19:09:25 CEST 2020


Dear All,

Please I need help. I ran the below function and got the highlighted error message. How can I correct it?

library(rvest)
library(rvest)
library(pbapply)
library(TTR)
library(dygraphs)
library(lubridate)
library(tidyquant)
library(timetk)
pacman::p_load(dygraphs,DT,quantmod)


# Web-scrape SP500 stock list
sp_500 <- read_html("https://en.wikipedia.org/wiki/List_of_S%26P_500_companies") %>%
html_node("table.wikitable") %>%
html_table() %>%
select(`Ticker symbol`, Security, `GICS Sector`, `GICS Sub Industry`) %>%
as_tibble()
# Format names
names(sp_500) <- sp_500 %>%
names() %>%
str_to_lower() %>%
make.names()
# Show results
sp_500

Error Message:

Error: Can't subset columns that don't exist.
x Column `Ticker symbol` doesn't exist.
Run `rlang::last_error()` to see where the error occurred.


The second function and the error is below:

get_stock_prices <- function(ticker), return_format = "tibble", ...) {
  # Get stock prices
  stock_prices_xts <- getSymbols(Symbols = ticker, auto.assign = FALSE, ...)
  # Rename
  names(stock_prices_xts) <- c("Open", "High", "Low", "Close", "Volume", "Adjusted")
  # Return in xts format if tibble is not specified
  if (return_format == "tibble") {
    stock_prices <- stock_prices_xts %>%
      as_tibble() %>%
      rownames_to_column(var = "Date") %>%
      mutate(Date = mdy(Date))
  } else {
    stock_prices <- stock_prices_xts
  }
  stock_prices
}

"MA" %>%
  get_stock_prices(return_format = 'tibble')%>%head()

ERROR MESSAGE:

Warning message:
All formats failed to parse. No formats found. 



Thank You and Best Regards, 
Emeka I. Atuma
Integrity - Walk Your Talk Don't Talk Your Work






On Friday, 25 September 2020, 21:12:24 GMT+1, AIE ATUMA <gttga2000 using yahoo.com> wrote: 





Dear All,

Please I need help. I ran the below function and got the highlighted error message. How can I correct it?

library(rvest)
# Web-scrape SP500 stock list
sp_500 <- read_html("https://en.wikipedia.org/wiki/List_of_S%26P_500_companies") %>%
html_node("table.wikitable") %>%
html_table() %>%
select(`Ticker symbol`, Security, `GICS Sector`, `GICS Sub Industry`) %>%
as_tibble()
# Format names
names(sp_500) <- sp_500 %>%
names() %>%
str_to_lower() %>%
make.names()
# Show results
sp_500

Error Message:

Error: Can't subset columns that don't exist.
x Column `Ticker symbol` doesn't exist.
Run `rlang::last_error()` to see where the error occurred.


The second function and the error is below:

get_stock_prices <- function(ticker), return_format = "tibble", ...) {
  # Get stock prices
  stock_prices_xts <- getSymbols(Symbols = ticker, auto.assign = FALSE, ...)
  # Rename
  names(stock_prices_xts) <- c("Open", "High", "Low", "Close", "Volume", "Adjusted")
  # Return in xts format if tibble is not specified
  if (return_format == "tibble") {
    stock_prices <- stock_prices_xts %>%
      as_tibble() %>%
      rownames_to_column(var = "Date") %>%
      mutate(Date = mdy(Date))
  } else {
    stock_prices <- stock_prices_xts
  }
  stock_prices
}

"MA" %>%
  get_stock_prices(return_format = 'tibble')%>%head()

ERROR MESSAGE:

Warning message:
All formats failed to parse. No formats found. 



Thank You and Best Regards, 
Emeka I. Atuma
Integrity - Walk Your Talk Don't Talk Your Work



More information about the R-SIG-Finance mailing list