R循环并从yahoo.com下载股票价格

R循环并从yahoo.com下载股票价格,r,loops,download,R,Loops,Download,我正试图从雅虎下载几股股票的价格。我尝试了下面的代码,它会产生结果,但我希望结果显示在“每股”列中 因此: 我如何才能做到这一点?稍微修改一下您的函数: prices <- function(ticker, start, end) { y=get.hist.quote(instrument = ticker, start = start, end = end, quote = "AdjClose",

我正试图从雅虎下载几股股票的价格。我尝试了下面的代码,它会产生结果,但我希望结果显示在“每股”列中

因此:


我如何才能做到这一点?

稍微修改一下您的函数:

prices <- function(ticker, start, end) {

  y=get.hist.quote(instrument = ticker,
                   start = start,
                   end = end, quote = "AdjClose",
                   retclass = "zoo")

  dimnames(y)[[2]] <- as.character(ticker)
  # print (y)
  y
} 

prices您也可以尝试新的软件包
tidyquant
,这使得获取许多股票符号的股票价格非常简单:

library(tidyquant)

ticker <- c('AAPL', 'MSFT', 'GOOG')

ticker %>%
    tq_get(get  = "stock.prices", 
           from = "2015-01-01",
           to   = "2015-09-01")
库(tidyquant)
股票代码%
tq_get(get=“stock.prices”,
from=“2015-01-01”,
to=“2015-09-01”)

非常感谢您的帮助!
prices <- function(ticker, start, end) {

  y=get.hist.quote(instrument = ticker,
                   start = start,
                   end = end, quote = "AdjClose",
                   retclass = "zoo")

  dimnames(y)[[2]] <- as.character(ticker)
  # print (y)
  y
} 
zoo_group <- do.call(cbind, lapply(tickers, prices, start=start, end=end))
head(zoo_group)
               AAPL     MSFT     GOOG
2015-01-02 107.9586 45.82758 524.8124
2015-01-05 104.9172 45.40616 513.8723
2015-01-06 104.9271 44.73971 501.9623
2015-01-07 106.3984 45.30815 501.1023
2015-01-08 110.4864 46.64103 502.6823
2015-01-09 110.6049 46.24900 496.1723
library(tidyquant)

ticker <- c('AAPL', 'MSFT', 'GOOG')

ticker %>%
    tq_get(get  = "stock.prices", 
           from = "2015-01-01",
           to   = "2015-09-01")