将道琼斯30股(全部30股)下载到R

将道琼斯30股(全部30股)下载到R,r,download,finance,R,Download,Finance,我正试图从雅虎金融公司下载道琼斯指数所有30支股票的数据。我也尝试过与多伦多证券交易所(tsx),但没有办法,我收到相同的消息,从R。请有人可以帮助我的代码,并在同一时间获得所有的股票。如果我把所有30股(道琼斯30股)或Tsx(60股)的股票都亲手交给我,那就太糟糕了。这是我的密码: dow=read.csv("DowJones30.csv",header=TRUE) 文件(文件“rt”)中出错:无法打开连接 此外:警告信息: 文件中(文件“rt”):无法打开文件“DowJones30.cs

我正试图从雅虎金融公司下载道琼斯指数所有30支股票的数据。我也尝试过与多伦多证券交易所(tsx),但没有办法,我收到相同的消息,从R。请有人可以帮助我的代码,并在同一时间获得所有的股票。如果我把所有30股(道琼斯30股)或Tsx(60股)的股票都亲手交给我,那就太糟糕了。这是我的密码:

dow=read.csv("DowJones30.csv",header=TRUE)
文件(文件“rt”)中出错:无法打开连接

此外:警告信息:

文件中(文件“rt”):无法打开文件“DowJones30.csv”:没有此类文件 或目录


文件(文件“rt”)中出错:无法打开连接

此外:警告信息:

文件中(文件“rt”):无法打开文件“tsx.csv”:没有此类文件或 目录


该错误表示当前工作目录中没有该文件(
getwd()

如果您试图获取托管在R-Forge上的DowJones30.csv文件,实际上可以通过URL直接加载该文件:

df <- read.csv('http://r-forge.r-project.org/scm/viewvc.php/*checkout*/pkg/fBasics/data/DowJones30.csv?revision=1&root=rmetrics&pathrev=1',sep=';');
head(df);
##    X.Y..m..d   AA  AXP     T    BA  CAT    C   KO    DD    EK   XOM   GE    GM  HWP   HD  HON INTC   IBM    IP  JPM  JNJ  MCD   MRK MSFT   MMM    MO    PG  SBC  UTX  WMT  DIS
## 1 1990-12-31 5.92 4.70 14.67 21.77 9.30 1.87 9.88 13.15 23.02 12.09 4.63 19.72 3.91 2.80 5.70 1.20 27.86 20.45 2.67 7.31 7.08 11.83 2.08 31.41 10.55 20.91 9.75 9.31 7.05 7.86
## 2 1991-01-02 5.92 4.70 14.67 21.77 9.30 1.87 9.88 13.15 23.02 12.09 4.63 19.72 3.91 2.80 5.70 1.20 27.86 20.45 2.67 7.31 7.08 11.83 2.08 31.41 10.55 20.91 9.75 9.31 7.05 7.86
## 3 1991-01-03 5.88 4.73 14.73 21.71 9.15 1.87 9.60 12.83 22.95 12.15 4.53 19.57 3.91 2.74 5.67 1.20 27.95 20.21 2.67 7.23 6.99 11.45 2.09 30.90 10.27 20.70 9.64 9.19 7.05 7.82
## 4 1991-01-04 5.76 4.73 14.79 22.50 9.00 1.92 9.85 13.06 22.74 12.27 4.47 19.00 3.85 2.75 5.65 1.20 27.86 20.50 2.69 7.18 7.02 11.27 2.11 30.80 10.24 20.48 9.56 9.24 6.97 7.79
## 5 1991-01-07 5.72 4.58 14.67 21.65 8.87 1.89 9.69 12.83 22.11 12.12 4.40 18.35 3.88 2.65 5.50 1.19 27.39 20.45 2.58 6.96 6.80 10.97 2.08 30.43 10.08 20.05 9.40 8.95 6.82 7.58
## 6 1991-01-08 5.63 4.53 14.73 21.34 9.05 1.85 9.60 12.60 22.18 12.09 4.44 18.28 3.90 2.59 5.47 1.18 27.08 20.26 2.58 7.02 6.83 11.01 2.04 29.65 10.11 20.02 9.32 8.78 6.85 7.41

df另一种方式!记录在案

library(XML) 
urlt <- "http://money.cnn.com/data/dow30/" 
doc.html = htmlTreeParse(urlt, useInternal = TRUE)
tables <- readHTMLTable(doc.html,as.data.frame=FALSE)
length(tables)
tables[[2]]
tables <- readHTMLTable(doc.html,
                        stringsAsFactors=FALSE,which = 2)

ticker=sapply(1:length(tables$Company),function(xs)
  strsplit(rawToChar(charToRaw(text[xs])),"Â",fixed=TRUE)[[1]][1]
  )
#ticker <- as.vector(as.character(ticker))
library(quantmod)
StockData <- new.env()
data <- getSymbols(ticker, env = StockData)
do.call(merge, eapply(StockData, Cl)[ticker])
库(XML)

urlt如果您在R-Studio中工作,请从屏幕顶部的下拉菜单中选择“会话”,然后选择“设置工作目录>选择目录”,并选择包含要打开的文件的文件夹(在本例中为“DowJones30.csv”和“tsx.csv”)


如果您不在R-Studio中工作,我强烈建议您安装R-Studio。

df我不确定是否有tsx60.csv文件,我不知道有。
library(XML) 
urlt <- "http://money.cnn.com/data/dow30/" 
doc.html = htmlTreeParse(urlt, useInternal = TRUE)
tables <- readHTMLTable(doc.html,as.data.frame=FALSE)
length(tables)
tables[[2]]
tables <- readHTMLTable(doc.html,
                        stringsAsFactors=FALSE,which = 2)

ticker=sapply(1:length(tables$Company),function(xs)
  strsplit(rawToChar(charToRaw(text[xs])),"Â",fixed=TRUE)[[1]][1]
  )
#ticker <- as.vector(as.character(ticker))
library(quantmod)
StockData <- new.env()
data <- getSymbols(ticker, env = StockData)
do.call(merge, eapply(StockData, Cl)[ticker])