R:识别重复组中的第一个和最后一个元素

汤姆·H
  Img  Time
1  B    1
2  B    2
3  B    3
4  B    7
5  B    8
6  B    11
7  G    12
8  G    14
9  G    16
10 G    21

大家好,
以上是我正在处理的数据类型的过度简化版本。我有图像(Img)呈现一段时间(Time)。

我想知道每个 Img 呈现多长时间,但是,我拥有的数据使获取该信息变得困难。没有唯一值来指示图像何时开始或停止,并且在显示新图像后计时器不会重置。

我想创建一个新列,显示与第一次显示图像时相比过去了多少时间。下面的例子:

  Img  Time  ElapTime
1  B    1       1
2  B    2       2
3  B    3       3
4  B    7       7
5  B    8       8
6  B    11      11
7  G    12      1
8  G    14      3
9  G    16      5
10 G    21      10

有没有办法识别重复序列中的第一个和最后一个元素?知道这可能有助于我创建一个调整后的时间列。

任何帮助是极大的赞赏!

阿克伦

我们按“Img”分组并从“时间”中减去first“时间”

library(dplyr)
df1 %>% 
   group_by(Img) %>%
   mutate(ElapTime = Time - first(Time) + 1)
# A tibble: 10 x 3
# Groups:   Img [2]
#     Img  Time ElapTime
#   <chr> <int>    <dbl>
# 1     B     1        1
# 2     B     2        2
# 3     B     3        3
# 4     B     7        7
# 5     B     8        8
# 6     B    11       11
# 7     G    12        1
# 8     G    14        3
# 9     G    16        5
#10     G    21       10

或者使用avebase R

df1$ElapTime <-  with(df1, ave(Time, Img, FUN = function(x) x- x[1]+1))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫=>按组获取第一个和最后一个元素的索引

如何识别对象数组中链的第一个和最后一个元素

熊猫从组中获取列的第一个和最后一个值

删除组中的第一个和最后一个观测值

使用RLE从组中获取第一个和最后一个值

删除数组中的第一个和最后一个元素

ul列表中的第一个和最后一个VISIBLE元素

NumPy数组中的第一个和最后一个元素

删除行中第一个和最后一个元素的填充

在MS SQL Server中重复该组时,按组删除除第一个和最后一个值以外的所有值(连续)

在R中查找条纹的第一个和最后一个日期

减少ndarray的第一个维度-保留第一个和最后一个元素

按组标识和输出第一个和最后一个记录

如何从三个相同的元素中隐藏第一个和最后一个元素

识别熊猫组中的第一个非零元素

Python熊猫获得数据的第一个和最后一个索引,如果第一个也是最后一个,则重复

列表中连续对的和,包括最后一个元素与第一个元素的和

如何识别列中的第一个和最后一个出现并记录位置?

多个第一个和最后一个非NA值(按组)

保留数组的第一个索引元素和最后一个索引元素

熊猫:与组中第一个元素的区别

R:data.table,将组的第一个和最后一个值设置为NA

从每个组中检索列的最后一个元素,并将其用作下一组中同一列的第一个元素

选择数组中N个均匀间隔的元素,包括第一个和最后一个

显示组中的第一个和最后一个mysql记录以及其他属性

数组中除第一个和最后一个元素外的其他元素

如何检查数组c ++中的第一个元素和最后一个元素

python27 matplotlib:连接的第一个和最后一个元素

仅循环第一个和最后一个元素