【问题标题】:How can i give same row number based on a two column values using dplyr [duplicate]如何使用 dplyr 根据两列值给出相同的行号 [重复]
【发布时间】:2018-07-23 13:37:54
【问题描述】:

数据集看起来像

var1 var2
a    1
a    1
b    2
b    2
a    1
a    1
c    3 
c    3

新的数据集应该是:

var1 var2 id
a    1    1
a    1    1
b    2    2
b    2    2
a    1    3
a    1    3
c    3    4
c    3    4

【问题讨论】:

  • @zx8754 IMO 你的建议不够笼统。它仅适用于“选择不当”的示例。 var1 和 var2 可能不同。可能会有所不同。
  • @AndreElrico 是的,这就是为什么只发布链接而不是关闭的原因。

标签: r dplyr


【解决方案1】:

我使用data.table

df1<-
data.table::fread("var1 var2
a    1
a    1
b    2
b    2
a    1
a    1
c    3 
c    3")

df1$id <- data.table::rleidv(df1)

#   var1 var2 id
#1:    a    1  1
#2:    a    1  1
#3:    b    2  2
#4:    b    2  2
#5:    a    1  3
#6:    a    1  3
#7:    c    3  4
#8:    c    3  4

【讨论】:

  • 感谢您解决这个问题
猜你喜欢
  • 1970-01-01
  • 2019-02-05
  • 1970-01-01
  • 2022-01-14
  • 2020-03-17
  • 2021-11-11
  • 2017-10-15
  • 1970-01-01
  • 2017-05-04
相关资源
最近更新 更多