Википедия просмотров матчей торговых дней
У меня есть данные для просмотра страниц Википедии, как это
library(wikipediatrend)
views <-wp_trend(page = "European debt crisis",from = "2010-01-01",to = "2014-12-31",lang = "en",friendly = TRUE,requestFrom = "wp.trend.tester at wptt.wptt",userAgent = TRUE)
date count
2010-01-01 128
2010-01-02 142
и у меня есть данные для S&P500
library(quantmod)
startDate = as.Date("2010-01-01")
endDate = as.Date("2014-12-31")
getSymbols("^GSPC", src = "yahoo", from = startDate, to = endDate)
Date Open High Low Close Volume
2010-01-04 1116.56 1133.87 1116.56 1132.99 3991400000
2010-01-05 1132.66 1136.63 1129.66 1136.52 2491020000
Теперь я хочу извлечь только те дни для страницы Википедии, когда произошла торговля, т.е. исключая выходные и праздничные дни, а также дни неестественного отключения, такие как ураган "Сэнди" и т. Д. И т. Д. Какой будет самый простой способ извлечь эти значения
2 ответа
Да понял это чуть позже и решил
gspcdf<-data.frame(date = index(GSPC), GSPC, row.names=NULL)
CombDF<-merge(views,gspcdf, by.x='date', by.y='date')
Это простая задача поднабора (или фильтрации):
# get the wikipedia views data
library(wikipediatrend)
views <-wp_trend(page = "European debt crisis",from = "2010-01-01",to = "2014-12-31",lang = "en",friendly = TRUE,requestFrom = "wp.trend.tester at wptt.wptt",userAgent = TRUE)
# get the stock trading data
library(quantmod)
startDate = as.Date("2010-01-01")
endDate = as.Date("2014-12-31")
getSymbols("^GSPC", src = "yahoo", from = startDate, to = endDate)
Вот как использовать подмножество [
в базе R:
# where are the trading dates in the stock data?
index(GSPC)
# where are the dates in the wikipedia data?
views$date
Итак, мы хотим подмножество views
кадр данных по date
столбец, так что он содержит только значения, найденные в index(GSPS)
:
# subset wikipedia data by stock data
# pattern is:
# table_to_subset[rule_to_subset_rows, rule_to_subset_columns]
# so to subset the wikipedia view data by the dates of the stock trading
# data we can do this:
wiki_data <- views[views$date %in% index(GSPC), ]
Вы также можете использовать предоставленные пакеты data.table
или же dplyr
сделать это, что может быть быстрее, если ваши данные очень большие.