【发布时间】:2021-12-27 20:40:07
【问题描述】:
我正在苦苦思考如何将我的数据框分成 2 个或更多部分。我有很多列和行,但想象一个玩具示例:
test = data.frame(car = c("A", "A", "B", "C", "D", "E", "B", "C", "D"), value = c(5,4,3,5, 6, 6, 7 ,8 ,10))
#result
# car value group
#1 A 5 1
#2 A 4 1
#3 B 3 2
#4 C 5 1
#5 D 6 2
#6 E 6 2
#7 B 7 2
#8 C 8 1
#9 D 10 2
我需要的唯一限制是:
同一辆车不能属于同一类别,即同一辆车,例如汽车A,它将出现在我真实数据框中的几行中。每次出现都必须有相同的对应类别,例如group = 1。同一组将有几辆不同的汽车,但同一辆车永远不能在不同的组中。
有什么提示吗?我试过test %>% mutate(group = ntile(car, 4)) 没有成功。
【问题讨论】:
-
你说的同一辆车不属于同一类别是什么意思??
-
另外,如果您可以在同一组中拥有不同的汽车,为什么不将上述所有汽车都放在组1中呢?你的解释仍然不完整。解释汽车 B、D 为何/如何在第 2 组中
-
@Onyambu,同一辆车,例如汽车
A,它将出现在我真实数据框中的几行中。每次出现都必须有相同的对应类别,例如group = 1。同一组将有几辆不同的汽车,但同一辆车永远不能属于不同的组。 -
那么没有唯一的解决方案。即取决于你想要多少组。如果你想要 1 组,所有的车都在同一个组中
-
@Onyambu,没错。我将在开始时尝试 4 个小组来尝试解决我的实际问题。