Your task is to choose one of the New York Times APIs, construct an interface in R to read in the JSON data, and transform it into an R DataFrame.
api_key <- "aFZgnziHlI2ihJtbCbFnBJnOqOHLHqgU"
baseurl <- "https://api.nytimes.com/svc/books/v3/lists.json"
list = list( `api-key`=api_key, list="hardcover-fiction")
response <- GET(baseurl, query=list)
db <- content(response)
Title <- vector()
Weeks <- vector()
Current <- vector()
Last_Week <- vector()
URL_AMAZON <-vector()
#looping through current best seller list
for ( i in 10:1) {
Title <- c( db$results[[i]]$book_details[[1]]$title, Title)
Weeks <- c( as.numeric (db$results[[i]]$weeks_on_list), Weeks )
Current <- c( as.numeric (db$results[[i]]$rank), Current)
Last_Week <- c( as.numeric (db$results[[i]]$rank_last_week), Last_Week)
URL_AMAZON<-c(as.character (unlist(db$results[[i]]$amazon_product_url)), URL_AMAZON)
}
#Create a dataframe
df = data.frame(Title = Title,Current = Current , Weeks = Weeks,
Last_Week = Last_Week, URL_AMAZON=URL_AMAZON)
library(formattable)
## Warning: package 'formattable' was built under R version 4.0.3
as.datatable(formattable(df))
## Loading required namespace: DT