首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向R下载道琼斯30股(全部30股)

向R下载道琼斯30股(全部30股)
EN

Stack Overflow用户
提问于 2015-04-19 21:31:04
回答 3查看 1.9K关注 0票数 2

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

代码语言:javascript
复制
dow=read.csv("DowJones30.csv",header=TRUE)

文件中的错误(文件,"rt"):无法打开连接

此外:警告信息:

在文件(文件,"rt")中:无法打开文件'DowJones30.csv':没有这样的文件或目录

代码语言:javascript
复制
dow=read.csv("tsx.csv",header=TRUE)

文件中的错误(文件,"rt"):无法打开连接

此外:警告信息:

在文件(文件,"rt")中:无法打开文件'tsx.csv':没有这样的文件或目录

EN

回答 3

Stack Overflow用户

发布于 2015-04-19 21:54:23

该错误意味着您没有当前工作目录(getwd())中的文件。

如果您试图获取驻留在R上的DowJones30.csv文件,您实际上可以通过URL直接加载它:

代码语言:javascript
复制
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
票数 0
EN

Stack Overflow用户

发布于 2016-08-22 18:47:12

另一条路!只是为了记录下。

代码语言:javascript
复制
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])
票数 0
EN

Stack Overflow用户

发布于 2016-09-05 01:47:13

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

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29736119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档