跳到内容

约书亚尔里奇/xts

存储库文件导航

关于

xts是一个R(右)提供扩展的包这个动物园类。动物园的力量来了从其使用的简单性(它与基本R函数非常相似),以及整体灵活性(您可以使用任何东西作为索引)。xts扩展受到通过施加合理的约束,同时提供真正基于时间的结构。

企业xts

作为Tidelift订阅的一部分提供。

的维护人员xts码以及数千个其他软件包正在与Tidelift合作,为您用来构建应用程序的开源依赖项提供商业支持和维护。节省时间,降低风险,改善代码运行状况,同时向您使用的确切依赖项的维护人员付费。了解更多信息。

支持xts开发

如果您有兴趣支持xts的持续开发和维护,请考虑成为赞助商.

安装

当前版本在上可用CRAN(起重机),您可以通过以下方式安装:

安装.包("xts码")

要安装开发版本,您需要克隆存储库并构建从源,或运行以下操作之一:

#轻量级
遥控器::安装github("约书亚尔里奇/xts")#
开发工具::安装github("约书亚尔里奇/xts")

您需要工具来编译C、C++和Fortran代码。请参阅相关内容中的附录R安装和管理手册对于您的操作系统:

入门

可以使用创建xts对象xts()作为.xts().

请注意作为.xts()当前预期日期/时间在行名称中用于矩阵和data.frame对象,或在向量的名称中。你也可以使用日期格式参数控制是否应转换名称日期POSIXct公司。请参阅帮助(如.xts.methods)了解详细信息。

n个 <- 10
系列 <-rnorm公司(n个)#POSIXct(日期/时间)索引
日期时间 <-seq(作为.POSIXct("2017-03-27"),输出长度 = n个,通过 = "")图书馆(xts码)x个 <-xts码(系列,日期时间)

除了可以子集矩阵和zoo对象的常用方法外,还可以还使用符合ISO-8601标准,这是国际公认和接受的日期和时间表示方式。使用前面代码块中的数据,以下是一些示例:

#2017年3月
x个["2017-03"]#[,1]
#2017-03-27  0.25155453
#2017-03-28 -0.09379529
#2017-03-29  0.44600926
#2017-03-30  0.18095782
#2017-03-31 -1.45539421

#3月30日至4月2日
x个["2017-03-30/2017-04-02"]#[,1]
#2017-03-30  0.1809578
#2017-03-31 -1.4553942
#2017-04-01 -0.4012951
#2017-04-02 -0.5331497

#系列开始至4月1日
x个["/2017-04-01"]#[,1]
#2017-03-27  0.25155453
#2017-03-28 -0.09379529
#2017-03-29  0.44600926
#2017-03-30  0.18095782
#2017-03-31 -1.45539421
#2017-04-01 -0.40129513

您可以将一个单变量系列或开-高-低-关(OHLC)数据聚合为低频OHLC系列至.period()功能。还有一些频率的便利功能(例如。至.分钟(),到.daily(),至.yearly()等)。

数据(样本矩阵)x个 <-as.xts公司(样本矩阵)至周期(x个,"")#x.打开x.高x.低x.关闭
#2007-01-31 50.03978 50.77336 49.76308 50.22578
#2007-02-28 50.22448 51.32342 50.19101 50.77091
#2007-03-31 50.81620 50.81620 48.23648 48.97490
#2007-04-30 48.94407 50.33781 48.80962 49.33974
#2007-05-31 49.34572 49.69097 47.51796 47.73780
#2007-06-30 47.74432 47.94127 47.09144 47.76719至月(x个)#结果有一个“年鉴”索引
#x.打开x.高x.低x.关闭
#2007年1月50.03978 50.77336 49.76308 50.22578
#2007年2月50.22448 51.32342 50.19101 50.77091
#2007年3月5081620 50.81620 48.23648 48.97490
#2007年4月48.94407 50.33781 48.80962 49.33974
#2007年5月49.34572 49.69097 47.51796 47.73780
#2007年6月47.74432 47.94127 47.09144 47.76719

这个周期.apply()函数允许将自定义函数应用于非-重叠间隔。使用类似于的输出端点().喜欢至.period()有方便的功能,喜欢应用.每日(),应用。每季度()等。

#每个列的月平均值周期。应用(x个,个终结点(x个,""),col平均值)#开盘-高-低-收盘
#2007-01-31 50.21140 50.31528 50.12072 50.22791
#2007-02-28 50.78427 50.88091 50.69639 50.79533
#2007-03-31 49.53185 49.61232 49.40435 49.48246
#2007-04-30 49.62687 49.71287 49.53189 49.62978
#2007-05-31 48.31942 48.41694 48.18960 48.26699
#2007-06-30 47.47717 47.57592 47.38255 47.46899

#开盘-高-低-收盘
#2007-01-31 50.21140 50.31528 50.12072 50.22791
#2007-02-28 50.78427 50.88091 50.69639 50.79533
#2007-03-31 49.53185 49.61232 49.40435 49.48246
#2007-04-30 49.62687 49.71287 49.53189 49.62978
#2007-05-31 48.31942 48.41694 48.18960 48.26699
#2007-06-30 47.47717 47.57592 47.38255 47.46899
有问题吗?

在上提问堆栈溢出R-SIG-财务邮件列表(您必须订阅邮件)。

想要亲身体验吗?

贡献

请参阅贡献指南.

另请参见

作者

杰弗里·瑞恩,约书亚·乌尔里奇