小编djf*_*noy的帖子

按连续出现的值进行分组

我遇到了一个问题,迫使我使用循环而不是我喜欢的dplyr管道流。

我想根据相同值的连续观察对行进行分组。例如,如果前四个观测值type相等a,则前四个观测值应分配到同一组。顺序很重要,所以我不能dplyr::group_bydplyr::summarize

下面的代码应该很好地解释了这个问题。我想知道是否有人可以提出一种不太冗长的方法来做到这一点,最好使用tidyverse包,而不是data.tables.

library(tidyverse)

# Crete some test data
df <- tibble(
  id = 1:20,
  type = c(rep("a", 5), rep("b", 5), rep("a", 5), rep("b", 5)),
  val = runif(20)
)

df
#> # A tibble: 20 x 3
#>       id type     val
#>    <int> <chr>  <dbl>
#>  1     1 a     0.0606
#>  2     2 a     0.501 
#>  3     3 a     0.974 
#>  4     4 a     0.0833
#> …
Run Code Online (Sandbox Code Playgroud)

r dplyr

2
推荐指数
1
解决办法
624
查看次数

交互式绘图:使用滑动条操作 ggplot2 绘图的内容

编辑:感谢哈维尔的建议。我忘了提到我想将此交互式绘图合并到报告/仪表板中,因此适用于来自 RMarkdown 的 HTML 文档的东西将是理想的,但仪表板解决方案也可以。

考虑以下情节;红线代表实际数据,而绿线描绘模型生成的预测:

在此处输入图片说明

显示两个不同模型的预测;一个训练了前 100 小时,另一个训练了前 216 小时。然后为看不见的数据点生成预测,然后绘制。

我想做的是训练n模型,例如。以扩大的窗口方式每 12 小时一次。完成此操作后,我想以交互方式呈现结果,用户可以单击/滑动某些东西来前后移动垂直线,从而更改显示哪个模型的预测。关键是要直观地显示不同训练长度的效果。

我是 R 中闪亮和交互式绘图的新手;这可以在没有太多麻烦的情况下完成吗?

r ggplot2 shiny

0
推荐指数
1
解决办法
561
查看次数

标签 统计

r ×2

dplyr ×1

ggplot2 ×1

shiny ×1