使用自定义端点的 to.minutes

2024-03-16

我使用的是从上午 9:50 开始的日内数据,并希望将其转换为 20 分钟的时间间隔,因此第一个时间段是从 09:50 到 10:09:59,第二个时间段是从 10 开始: 10 至 10:29:59 等 但是to.minutes()来自xts软件包似乎将其固定在时间上,并且在 09:59:59 和 10:19:59 等处有时间栏……即已经过去了 10 分钟...我知道这可能不是一个常规请求...但是是否可以这样做以使其具有正确的端点,即基于第一个时间戳?

对于奖励积分...有没有办法根据最终时间戳来做到这一点? (即生成从该时间戳向后的周期端点?

这是我关于 10 分钟后的观点的说明(与我想要的相比)

x <- xts(rnorm(24*60*60), as.POSIXct(format(paste(Sys.Date(),'09:50')))-((24*60*60):1))
head(x)
x1 <- to.minutes(x, 20)
head(x1)

我可以想出一种方法来通过使用 splits、cuts、lapplys do.calls 和 rbinds 来纠正这个问题...但我基本上会重新创建一个 OHLC 对象...并且感觉与现有的相比它可能效率低下解决方案...


这是一个有用的技巧,在 xts 文档中可能会更加突出。

从一个开始xts object

R> set.seed(42)   ## fix seed
R> X <- xts(cumsum(rnorm(100))+100, order.by=Sys.time()+cumsum(runif(100)))
R> head(X)
                              [,1]
2012-10-05 06:42:20.299761 101.371
2012-10-05 06:42:20.816872 100.806
2012-10-05 06:42:21.668803 101.169
2012-10-05 06:42:22.111599 101.802
2012-10-05 06:42:22.269479 102.207
2012-10-05 06:42:22.711804 102.100

给定这个不规则序列,我们希望按照我们规定的规则间隔进行子集化。在这里,我创建了一个两秒的间隔。任何其他的都可以如果是同一类型作为索引,这里POSIXct.

R> ind <- seq(start(X) - as.numeric(start(X)-round(start(X))) + 1, 
+             end(X), by="2 secs")
R> head(ind)
[1] "2012-10-05 06:42:21 CDT" "2012-10-05 06:42:23 CDT" 
[3] "2012-10-05 06:42:25 CDT" "2012-10-05 06:42:27 CDT" 
[5] "2012-10-05 06:42:29 CDT" "2012-10-05 06:42:31 CDT"
R> 

现在的技巧是将规则序列与不规则序列合并,调用na.locf()在其上将最后一个好的不规则观测值调用到新的时间网格上——然后在时间网格上进行子集化:

R> na.locf(merge(X, xts(,ind)))[ind]
                           X
2012-10-05 06:42:21 100.8063
2012-10-05 06:42:23 102.1004
2012-10-05 06:42:25 105.4730
2012-10-05 06:42:27 107.2635
2012-10-05 06:42:29 104.9588
2012-10-05 06:42:31 101.7505
2012-10-05 06:42:33 104.6884
2012-10-05 06:42:35 103.6441
2012-10-05 06:42:37 101.6476
2012-10-05 06:42:39  98.6246
2012-10-05 06:42:41  97.9922
2012-10-05 06:42:43  97.7545
2012-10-05 06:42:45 101.0187
2012-10-05 06:42:47  98.0331
2012-10-05 06:42:49 100.7752
2012-10-05 06:42:51 103.0702
2012-10-05 06:42:53 102.6578
2012-10-05 06:42:55 103.1342
2012-10-05 06:42:57 103.4714
2012-10-05 06:42:59 102.3683
2012-10-05 06:43:01 105.0394
2012-10-05 06:43:03 103.9775
R> 

Voila.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用自定义端点的 to.minutes 的相关文章

  • 闪亮的演示文稿 (ioslides):自定义 CSS 和徽标

    我安装了以下内容 RStudio 预览版 版本 0 98 864 2014 年 5 月 24 日 knitr 和shiny 的开发版本 来自 devtools install github c yihui knitr rstudio shi
  • ggplot:按组自动化的百分位线

    我找到了dplyr gt 运算符有助于简单的 ggplot2 转换 无需求助于ggproto 这是必需的ggplot2 扩展 http docs ggplot2 org dev vignettes extending ggplot2 htm
  • 返回带有参数的函数的函数

    创建一个应返回包含原始函数参数的函数时 我应该如何处理 例如考虑这个函数 a lt function value function x x value 我希望它返回我在结果函数的参数中指定的值 如下所示 b lt a 3 gt b gt f
  • 从 R 主题模型中的 DocumentTermMatrix 中删除空文档?

    我正在使用 R 中的 topicmodels 包进行主题建模 我正在创建一个 Corpus 对象 进行一些基本的预处理 然后创建一个 DocumentTermMatrix corpus lt Corpus VectorSource vec
  • 根据值的运行总计创建组

    我的数据在一个变量 Y 上是唯一的 另一个变量 Z 告诉我每个 Y 中有多少人 我的问题是我想从这些 Y 和 Z 创建 45 人的组 我的意思是 每当运行总计Z 达到 45 创建一组 然后代码继续创建下一组 我的数据看起来像这样 ID X
  • profvis() 何时以及为何显示“源不可用”?

    我经常分析 R 代码 并大量使用 profvis 对于某些函数 浏览器窗口的上半部分会显示源代码 有时则不会 我不知道什么时候会出现这种情况 对我来说这似乎是随机的 有谁知道 profvis 何时以及为什么无法在顶部窗口中显示代码 发生这种
  • 在 R 中读取 Stata 13 文件

    有没有办法在 R 中读取 Stata 版本 13 数据集文件 我尝试执行以下操作 gt library foreign gt data read dta TEAdataSTATA dta 但是 我收到一个错误 read dta TEAdat
  • R 中大型稀疏矩阵的聚类分析

    我有一个包含 250000 笔交易 行 和 2183 项 列 的交易数据集 我想将其转换为稀疏矩阵 然后对其进行分层聚类 我尝试了包 sparcl 但它似乎不适用于稀疏矩阵 关于如何解决这个问题有什么建议吗 或者我可以使用任何其他包对稀疏矩
  • Dplyr 多重滞后整齐评估?

    我试图在 dplyr 中使用尽可能少的代码来实现多个滞后 同时坚持整洁的评估 以下标准评估 SE 代码有效 if require dplyr install packages dplyr library dplyr a as tibble
  • mclapply 用户时间大于已用时间

    我正在尝试使用mclapply的功能parallel封装在R 该函数通过计算对数似然距离将值分配给序列矩阵 这是一个 CPU 密集型操作 所结果的system time价值观令人困惑 gt system time mclapply work
  • 如何在R中逐行写入文件

    我正在尝试逐行读取 csv 文件 并且仅选择左侧的第二个和第三个单元格以及右侧的第三个单元格 例如 如果这一行中有 17 个单元格 我将选取第 15 个单元格 然后我想合并这 3 个单元格 用逗号分隔 然后将此行写入一个新的 csv 文件
  • R中有字典功能吗

    有没有办法在 R 中创建一个 字典 使其具有对 一些效果 x dictionary c Hi Why water c 1 5 4 x Why 5 我问这个是因为我实际上正在寻找两个分类变量函数 所以如果 x dictionary c a b
  • 如何在 Shiny 中动态渲染的 textInput 添加样式元素

    你好堆栈溢出 在我最近提出的问题中 我已经解决了一些与动态渲染 UI 元素相关的主要问题 并在一些了不起的人的帮助下动态创建了观察者 参见此处 动态渲染的 UI 如何在第二次运行时删除旧的反应变量 https stackoverflow c
  • 如何优化 R 中的 sapply 来计算数据帧上的运行总计

    我在 R 中编写了一个函数来按月份计算累积总数 但随着数据集变大 我的方法的执行时间呈指数增长 我是一名 R 程序员新手 你能帮我提高效率吗 该函数以及我调用该函数的方式 accumulate lt function recordnum d
  • 通过 RCpp 返回 NA

    新手 RCpp 问题在这里 How can I make a NumericVector returnNA到R 例如 假设我有一个 RCpp 代码 它分配NA到向量的第一个元素 RCpp export NumericVector myFun
  • 如何根据查找表匹配多列

    我有以下两个数据框 lookup lt data frame id c A B C price c 1 2 3 results lt data frame price 1 c 2 2 1 price 2 c 3 1 1 我现在想要浏览所有列
  • 如何处理包内部的 R 数据?

    我正在开发的 R 包需要多个 R 数据对象 例如预先计算的模型和参数 目前 我将包的 数据 目录中的每个对象放在单独的 RData 文件中 使用该包时 用户可以使用 数据 功能将这些对象附加到他们的环境中 我想要的行为是 在加载包时 数据对
  • 替换rmarkdown/knitr/pdf中字幕的自动编号

    我正在使用 Rmarkdown 生成 PDF 文档 我想在其中手动定义图号 下面是一个块的示例 r chunk26 fig cap Fig 5 3 My figure caption plot 1 1 我使用特殊的编号来遵循文档的章节 问题
  • R 在安装包依赖项时不考虑最大版本

    假设我正在开发一个名为magicr做一些统计魔术 我希望它使用另一个名为的包中的函数fairydust 假设 存在于 CRAN 上 很遗憾fairydust刚刚向 CRAN 发布了 2 0 0 版本 完全破坏了我计划使用的功能 所以我更新了
  • R - 如何为数据范围内的缺失值绘制条形图零点?

    假设我对 1 到 10 之间的整数的 200 个点有 10 个观察值 mysample sample rep seq 1 10 20 10 我想用条形图绘制它 barplot table mysample barplot https i s

随机推荐

  • SSIS 将百分比转换为小数

    我正在尝试获取在数据库中显示为小数的百分比 我进行了以下设置以将百分比列转换为小数 excel source gt data conversion gt db output 我尝试将输入严格转换为十进制和数字 这些都没有改变我的结果 在数据
  • 添加输入变量以在 Python 中绘制标题/图例

    我想在绘图标题 图例 注释文本中显示用于绘制某个函数的参数的当前值 举个简单的例子 我们拿一条直线 import numpy import matplotlib pyplot as plt def line m c x numpy lins
  • 如何连接 Windows 中的其他程序?

    谁能解释一个程序如何挂钩并修改 Windows 中其他程序的行为 这怎么可能呢 Windows 程序是否不会保护自己免受其他程序进入其内存等的影响 我不知道它的内部结构是如何工作的 所以我只是说 进入他们的记忆 我敢打赌它比这更复杂 另外
  • select2 中的 Angular ng-options - 设置值属性

    我有一系列国家 var countriesList name Israel code IL name India code IN name Andorra code AD 以及一系列选定的国家 地区 selectedCountries co
  • 如何在 Flutter 中创建按钮表并从中随机选择任何按钮?

    我正在尝试在 Flutter 中创建一个自定义的 Housie 游戏门票生成器 其中我必须从 4X3 按钮表中随机选择一个按钮 并显示一个否 在那个按钮上 单击按钮后 它的颜色从绿色变为红色 我通过对所有单元格进行硬编码创建了一个 4X3
  • 如何解决最大数量限制的杆切割问题允许削减多少?

    我知道如何使用动态规划解决杆切割问题 但是 当我们限制允许的最大切割次数时 动态规划无法给出正确的答案 即使我也无法想到该问题的递归解决方案 帮助 问题是这样的 确定通过切割杆并出售碎片可获得的最大收入 给定长度为 N 的杆 以及长度为 i
  • 高性能串联二维数组存储为子数组[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 想象一下 我们有几个由 X Y 坐标标识的 3x3 2D 数组 伪代码 Array 0 0 Array 1 0 1 2 1 1 2 1
  • GUID:varchar(36) 与 uniqueidentifier

    我正在使用一个将 GUID 值存储为 varchar 36 数据类型的旧数据库 CREATE TABLE T Rows RowID VARCHAR 36 NOT NULL PRIMARY KEY RowValue INT NOT NULL
  • 如何在 XSLT 处理器中使用 HTML5 的“about:”协议

    HTML5 草案指定 http dev w3 org html5 spec Overview html about 3alegacy compat 至少目前 URIabout legacy compat可用于依赖于符合 XML 的文档类型
  • 非虚拟和抽象方法的命名约定[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我经常发现自己创建使用这种形式 A 的类 abstract class Animal public void Walk TODO do some
  • FastAPI异步后台任务会阻塞其他请求吗?

    我想在 FastAPI 中运行一个简单的后台任务 其中涉及一些计算 然后将其转储到数据库中 但是 计算会阻止它接收更多请求 from fastapi import BackgroundTasks FastAPI app FastAPI db
  • Swings ImageIcon 构造函数非常慢

    编辑 请参阅对此答案的评论以获取此问题的答案 TLDR 瓶颈是缩放图像 但分析显示这是 ImageIcon 构造函数中的问题 java version Picked up JAVA OPTIONS Dswing aatext true Da
  • 为什么我在安装 gem 时收到“权限被拒绝”错误?

    我正在尝试安装 Jekyll 运行后gem install jekyll我收到此错误 ERROR While executing gem Errno EACCES Permission denied usr local lib ruby g
  • Firebase 实时数据库 API 中的“set”和“update”有什么区别?

    正如标题所说 我无法理解之间的区别update and set 此外 文档也无法帮助我 因为如果我使用 set 代替 更新示例的工作原理完全相同 The update文档中的示例 function writeNewPost uid user
  • Android getsupportedvideosizes 在模拟器上返回 null

    我尝试在模拟器中获取支持的视频大小 如下所示 但它总是返回 null 为什么会这样 我在 4 03 中尝试过 提前致谢 Camera camera Camera open android hardware Camera Parameters
  • 无法从 $injector.get() 获取服务实例

    我定义了一个名为 greeting 的客户服务 但无法从 injector get greeting 获取该实例 它会抛出这样的错误 未知提供者 greetingProvider 那么哪种方式才是正确的获取方式呢 以下是代码 var app
  • 更改 y 对数刻度 imshow()

    我正在尝试根据周期绘制 y 尺度的频谱图 所以我想要一个反转的对数尺度 事情是 我找到了如何使用pcolormesh 不是通过使用imshow imshow 似乎比pcolormesh 这对我来说 是一个非常喜欢它的理由 我错过了什么 我不
  • 如何在 SQL Server 和 C# 中加快读取大量数据的速度

    我的数据库中有一个包含大约 200k 条目的视图 我正在使用以下代码阅读它 using SqlConnection conn new SqlConnection conn Open string query SELECT FROM SP3D
  • Perl:写入速度之谜?

    输出速率怎么可能高于硬盘写入速率呢 Update 1 我更改了以下内容 关闭了防病毒软件 不用找了 插入新的物理磁盘并使用第一个分区 为了测试 初始测试的磁盘位于 最后一个分区 与系统分区分开 但是 在同一物理磁盘上 结果 有相同的 循环模
  • 使用自定义端点的 to.minutes

    我使用的是从上午 9 50 开始的日内数据 并希望将其转换为 20 分钟的时间间隔 因此第一个时间段是从 09 50 到 10 09 59 第二个时间段是从 10 开始 10 至 10 29 59 等 但是to minutes 来自xts软