融合数据的位置编号

时间:2018-11-17 00:38:55

标签: r

我已经融合了要取消融合的数据。我创建了一个“索引”列,但是我需要在每个分组的数据之后重复该列。这是一个示例:

这是我的数据:

index start value
1     5     0.4
2     5     0.9
3     5     0.3
4     6     0.2
5     6     0.1
6     6     0.7

当我用dcast解开它时,它看起来像这样:

start   1     2     3     4     5      6
5       0.4   0.9   0.3
6                         0.2   0.1    0.7

因此,我需要一种在“开始”值更改时从“ 1”重新启动的方法。因此,最终看起来像这样:

start   1     2     3 
5       0.4   0.9   0.3
6       0.2   0.1   0.7

谢谢!

2 个答案:

答案 0 :(得分:2)

这里是创建适当的索引列的一种方法,假设df是您的数据框对象-

df$index <- ave(df$start, df$start, FUN = seq_along)

答案 1 :(得分:1)

使用dplyr:

group_by(df, start) %>%
  mutate(index=row_number())