In [4]:
#install.packages('quantmod') # 安装quantmod包,因为我已经安装好了,所以不需要安装
require(quantmod) #引用quantmod包
getSymbols("JD",src="yahoo",from="2017-06-09", to='2017-09-09',"getSymbols.yahoo.warning"=TRUE) #从雅虎财经获取京东JD的股票数据
chartSeries(JD,up.col='red',dn.col='green') #显示K线图,红涨绿跌
#addMACD() #增加MACD图
#就能够看到下图的效果了:
那么R到底是什么?或者说,R到底是做什么用的?从不同的角度出发,对R会有不同的描述。
当然,现在Python也同样推荐。
与Matlab相比,R更具备开放性:
R常用于金融和统计领域。大多数人使用R就是因为它的统计功能,R的内部实现了很多经典的or时髦的统计技术。
R语言是一种面向对象的语言,所有的对象都有两个内在属性:元素类型和长度。 元素类型是对象内元素的基本类型,包括:数值(numeric),字符型(character),复数型(complex)、逻辑型(logical)、函数(function)等,通过mode()函数可以查看一个对象的类型。 长度是对象中元素的数目,通过函数length()可以查看对象的长度。 除了元素类型外,对象本身也有不同的“类型”,表示不同的数据结构(struct)。R中的对象类型主要包括:
R是一种语法非常简单的表达式语言(expression language)。使用者通过命令(command)与R进行交互。
基本命令要么是表达式(expressions)要么就是赋值(assignments)。如果一条命令是表达式,那么它将会被解析(evaluate),并将结果显示在屏幕上,同时清空该命令所占内存。赋值同样会解析表达式并且把值传给变量但结果不会自动显示在屏幕上。
基于命令,可以用交互的方式或者批处理/脚本文件的方式使用R。
交互式shell是一种很方便的环境,可以进行各种尝试,随时调整过程。与Python、Ruby等语言一样,R也提供了shell环境。本文开始的例子就是以交互的方式使用R。当打开R控制台时,R会显示命令提示符">",此时可以输入命令。 下面是交互式使用R的几个例子:
例一:
In [2]:
# help.start() #启动在线帮助,会打开浏览器。
x <- 1:20 # 相当于x=(1,2,…,20)
ls() #查看当前工作空间里面的 R 对象
plot.default(x)
In [3]:
x <- rnorm(50); y <- rnorm(x) #产生两个随机向量x和y
plot(x,y) #使用x,y画二维散点图, 会打开一个图形窗口
rm(x,y) #清除x,y对象