Quandl R Package

通过Quandl API可以快速准确地获取宏观经济数据。(https://www.quandl.com/docs/api)

分享两个国外的优秀网站

R和Python在线免费学习的网站》超赞

高频数据与算法学习

This is Quandl's R package. The Quandl R package uses the Quandl API. The official Quandl R package manual can be found here.

License provided by MIT.

For more information please contact raymond@quandl.com

Installation

To install the devtools package:

install.packages("devtools")
library(devtools)
install_github("quandl/quandl-r")

CRAN

To install the most recent package from CRAN type:

install.packages("Quandl")
library(Quandl)

Note that the version on CRAN might not reflect the most recent changes made to this package.

Authentication

To make full use of the package we recommend you set your api key. To do this create or sign into your account and go to your account api key page. Then input your API key (with quotes):

Quandl.api_key("tEsTkEy123456789")

Usage

The Quandl package functions use the Quandl API. Optional Quandl API query parameters can be passed into each function. For more information on supported query parameters, please see the Quandl API documentation page. Once you find the data you would like to load into R on Quandl, copy the Quandl code from the description box and paste it into the function.

data <- Quandl("NSE/OIL")

Graphing Data Example

To create a graph of Google's performance month-over-month:

plot(stl(Quandl("WIKI/GOOG",type="ts",collapse="monthly")[,11],s.window="per"))

Note: collapse is a Quandl API query parameter. Click here for a full list of query parameter options.

Return Types

The supported return types for the Quandl(code) function are:

To request a specific type, assign the type argument the return type:

data <- Quandl('NSE/OIL', type = "xts")

Date Formats

zoo, xts, and ts have their own time series date formats. For example:

data <- Quandl('NSE/OIL', collapse = "quarterly", type = "zoo", limit = 3)

data will have indexes 2015 Q1, 2015 Q2, and 2015 Q3:

         Open  High    Low   Last  Close Total Trade Quantity Turnover (Lacs)
2015 Q1 459.8 462.8 452.45 454.45 454.95 277225 1265.84
2015 Q2 448.0 451.7 445.10 447.80 446.80 352514 1576.93
2015 Q3 456.0 465.0 454.15 456.80 456.75 174154 797.79

If you want the time series index to be displayed as dates, you will need to set force_irregular = TRUE:

data <- Quandl('NSE/OIL', collapse = "quarterly", type = "zoo", limit = 3, force_irregular = TRUE)

data will now have indexes 2015-03-31, 2015-06-30, and 2015-09-30:

            Open  High    Low   Last  Close Total Trade Quantity Turnover (Lacs)
2015-03-31 459.8 462.8 452.45 454.45 454.95 277225 1265.84
2015-06-30 448.0 451.7 445.10 447.80 446.80 352514 1576.93
2015-09-30 456.0 465.0 454.15 456.80 456.75 174154 797.79

Merged Dataset Data

If you want to get multiple codes at once, delimit the codes with ',', and put them into an array. This will return a multiset.

merged_data <- Quandl(c('GOOG/NASDAQ_AAPL', 'GOOG/NASDAQ_MSFT'))

You can also specify specific columns to retrieve. For example, if you only want column 1 from GOOG/NASDAQ_AAPL and column 2 from GOOG/NASDAQ_MSFT:

merged_data <- Quandl(c('GOOG/NASDAQ_AAPL.1', 'GOOG/NASDAQ_MSFT.2'))

Downloading Entire Database

An entire database's data can be downloaded. For example, to download the database ZEA:

Quandl.database.bulk_download_to_file("ZEA", "./ZEA.zip")

Note you must set your api key to download premium databases to which you are subscribed.

For a full list of optional query parameters for downloading an entire database, click here.

Datatables

To retrieve Datatable data, provide a Datatable code to the Quandl datatables function:

data = Quandl.datatable('ZACKS/FC')

The output format is data.frame. Given the volume of data stored in datatables, this call will retrieve the first page of the ZACKS/FC datatable. You may turn on pagination to return more data by using:

data = Quandl.datatable('ZACKS/FC', paginate=TRUE)

This will retrieve multiple pages of data and merge them together as if they were one large page. In some cases, however, you will still exceed the request limit. In this case we recommend you filter your data using the available query parameters, as in the following example:

Quandl.datatable('ZACKS/FC', ticker=c('AAPL', 'MSFT'), per_end_date.gt='2015-01-01', qopts.columns=c('ticker', 'per_end_date', 'tot_revnu'))

In this query we are asking for more pages of data, ticker values of either AAPL or MSFT and a per_end_date that is greater than or equal to 2015-01-01. We are also filtering the returned columns on ticker, per_end_date and tot_revnu rather than all available columns.

Search

Searching Quandl from within the R console is now supported. The search function is:

Quandl.search(query = "Search Term", page = n, database_code = "Specific database to search", silent = TRUE|FALSE)
  • query: Required; Your search term, as a string
  • page: Optional; page number of search you wish returned, defaults to 1.
  • per_page: Optional; number of results per page, defaults to 10 in the Quandl R package.
  • database_code: Optional; Name of a specific source you wish to search, as a string
  • silent: Optional; specifies whether you wish the first three results printed to the console, defaults to True (see example below).

Which outputs to console a list containing the following information for every item returned by the search:

  • Name
  • Quandl code
  • Description
  • Frequency
  • Column names

Example

A search for Oil, searching only the National Stock Exchange of India (NSE).

Quandl.search("Oil", database_code = "NSE", per_page = 3)

prints:

Oil India Limited
Code: NSE/OIL
Desc: Historical prices for Oil India Limited<br><br>National Stock Exchange of India<br><br>Ticker: OIL<br><br>ISIN: INE274J01014
Freq: daily
Cols: Date | Open | High | Low | Last | Close | Total Trade Quantity | Turnover (Lacs) Oil Country Tubular Limited
Code: NSE/OILCOUNTUB
Desc: Historical prices for Oil Country Tubular Limited<br><br>National Stock Exchange of India<br><br>Ticker: OILCOUNTUB<br><br>ISIN: INE591A01010
Freq: daily
Cols: Date | Open | High | Low | Last | Close | Total Trade Quantity | Turnover (Lacs) Gulf Oil Corporation Limited
Code: NSE/GULFOILCOR
Desc: Historical prices for Gulf Oil Corporation Limited (GULFOILCOR), (ISIN: INE077F01027), National Stock Exchange of India.
Freq: daily
Cols: Date | Open | High | Low | Last | Close | Total Trade Quantity | Turnover (Lacs)

Additional Resources

More help can be found at Quandl in our R and API pages.

转载Quandl R Package的更多相关文章

  1. Factoextra R Package: Easy Multivariate Data Analyses and Elegant Visualization

    factoextra is an R package making easy to extract and visualize the output of exploratory multivaria ...

  2. [转载]npm 与 package.json 快速入门教程

    npm 与 package.json 快速入门教程 2017-08-02 19:16:20 拭心 阅读数 78648更多 分类专栏: 学学前端   版权声明:本文为博主原创文章,遵循CC 4.0 BY ...

  3. 【转载】R中有关数据挖掘的包

    下面列出了可用于数据挖掘的R包和函数的集合.其中一些不是专门为了数据挖掘而开发,但数据挖掘过程中这些包能帮我们不少忙,所以也包含进来. 1.聚类 常用的包: fpc,cluster,pvclust,m ...

  4. R语言安装R package的2种方法

    http://www.cnblogs.com/emanlee/archive/2012/12/05/2803606.html

  5. R: for installing package 'RODBC'

    Today, i try to install a package in R named 'DOBDC', while i meet a message: > install.packages( ...

  6. Asynchronous and Distributed Programming in R with the Future Package

    Every now and again someone comes along and writes an R package that I consider to be a 'game change ...

  7. The leaflet package for online mapping in R(转)

    It has been possible for some years to launch a web map from within R. A number of packages for doin ...

  8. Create and format Word documents using R software and Reporters package

    http://www.sthda.com/english/wiki/create-and-format-word-documents-using-r-software-and-reporters-pa ...

  9. 从Github上轻松安装R包—githubinstall包--转载

    1.综述 越来越多的R包正在由世界上不同的人所创建,其中一部分原因是devtools包使得开发R包1变得更加简单.devtools包不仅让开发R包变得简单,而且用于分发R包. 当开发者发布一个R包的时 ...

随机推荐

  1. win2008远程桌面会话数增加

    1.[解决]由于没有远程桌面授权服务器可以提供许可证,远程回话被中断 你看到的这个文章来自于http://www.cnblogs.com/ayanmw 由于windows server 2008 R2 ...

  2. js 与或运算符 || && 妙用

    js 与或运算符 || && 妙用,可用于精简代码,降低程序的可读性.   首先出个题: 如图: 假设对成长速度显示规定如下: 成长速度为5显示1个箭头: 成长速度为10显示2个箭头: ...

  3. SetHandleInformation设置内核对象标志

    当父进程创建子进程时,子进程将继承父进程的内核对象.这时如果要控制子进程使用父进程的内核对象.可以使用 SetHandleInformation设置. BOOL SetHandleInformatio ...

  4. SSAS:菜鸟摸门

    官方:SSAS 多维模型 Analysis Services 多维解决方案使用多维数据集结构来分析多个维度之间的业务数据. 多维模式是 Analysis Services 的默认服务器模式. 它包括针 ...

  5. Mysql 导入数据,推荐Source命令,太快了

    http://jingyan.baidu.com/article/cbf0e500d15c762eab289362.html

  6. c# socket 框架学习 SocketAsyncEventArgsPool 封装

    public class SocketAsyncEventArgsPool{ //已使用记录 private List<Int32> usedRecord; //未使用记录 private ...

  7. 解析表达式到lucene.net的Query

    查询的时候有自己的查询格式,为了统一并且方便的搜索lucene.net 于是就写了个解析格式,大体上覆盖了几乎所有的lucene.net的query了.当然少了公共扩展库里包含的regexQuery, ...

  8. MyEclipse 2015优化技巧

    MyEclipse 2015优化速度方案仍然主要有这么几个方面:去除无需加载的模块.取消冗余的配置.去除不必要的检查.关闭更新. 第一步: 去除不需要加载的模块 一个系统20%的功能往往能够满足80% ...

  9. Weblogic 10.3.6生产模式启动

    生产模式启动里需要输入用户名和密码,很麻烦.在域的/security目录下创建文件boot.properties,内容为: username=weblogic password=weblogic123 ...

  10. 解决Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future:

    php 5个版本,5.2.5.3.5.4.5.5,怕跟不上时代,新的服务器直接上5.5,但是程序出现如下错误:Deprecated: mysql_connect(): The mysql extens ...