【发布时间】:2018-08-01 11:22:34
【问题描述】:
这里已经回答了部分问题special-group-number-for-each-combination-of-data。在大多数情况下,我们在数据中包含对和其他数据值。我们想要实现的是,如果存在这些对,则对这些组进行编号,并将它们编号直到下一对。
当我集中每一对时,例如 c("bad","good") 想对它们进行分组,并为 c('Veni',"vidi","Vici") 分配唯一编号 666。
这是示例数据
names <- c(c("bad","good"),1,2,c("good","bad"),111,c("bad","J.James"),c("good","J.James"),333,c("J.James","good"),761,'Veni',"vidi","Vici")
df <- data.frame(names)
这是真实和一般情况下的预期输出
names Group
1 bad 1
2 good 1
3 1 1
4 2 1
5 good 2
6 bad 2
7 111 2
8 bad 3
9 J.James 3
10 good 4
11 J.James 4
12 333 4
13 J.James 5
14 good 5
15 761 5
16 Veni 666
17 vidi 666
18 Vici 666
【问题讨论】:
-
为什么要在第 10 行开始一个新组。您将 good 和 Good 视为同一个词?
-
@Frank 不,不。只是打字错误。很抱歉!
-
分组方案对我来说是 0 意义。请解释第 1:15 行的组。
-
@Vlo 一个组不能包含两次相同的值。第 5 行开始一个新组,因为
good已经出现在当前组中;第 13 行开始了一个新组,因为 J.James 已经出现在当前组(第 4 组)中......似乎必须逐行完成,并且可能非常缓慢,但也许我错过了一些东西。跨度> -
@Alexander 上面列出的数据是您的最终格式吗?如果您要每 2 分钟更改一次外观,则尝试解决此问题非常令人沮丧。通过最近的调整,您已经大大改变了“名称”的含义。