我正在努力解决一个可能很简单的问题。我有一个 1 列 n 行的数据框(n 是 3 的倍数)。我想添加第二列,其中包含整数,例如:1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,..如何实现此目的dplyr 作为不同长度行(均为 3 的倍数)的通用解决方案。
我试过这个:
df <- tibble(Col1 = c(1:12)) %>%
mutate(Col2 = rep(1:4, each=3))
这有效。但我想要一个 n 行的解决方案,每行 = 3 。非常感谢!
您可以指定each
and length.out
参数输入rep
.
library(dplyr)
tibble(Col1 = c(1:12)) %>%
mutate(Col2 = rep(row_number(), each=3, length.out = n()))
# Col1 Col2
# <int> <int>
# 1 1 1
# 2 2 1
# 3 3 1
# 4 4 2
# 5 5 2
# 6 6 2
# 7 7 3
# 8 8 3
# 9 9 3
#10 10 4
#11 11 4
#12 12 4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)