R中的重排因子变量

时间:2018-08-15 17:36:58

标签: r

感谢您的帮助!

我想要向量:

fb_ad %>% filter(geo == d_choices[2]) %>% group_by(ad_name) %>% summarise_at(ycol[3], funs(n = sum) )

成为

SELECT COALLESCE(o.email, c.email) AS email , o.user_id , c.sessions FROM datasource o FULL JOIN datasource2 c ON o.email = c.email

我没有排序!

3 个答案:

答案 0 :(得分:4)

使用rleid

data.table::rleid(s)
[1] 1 1 1 2 2 3 4 5

答案 1 :(得分:4)

以R为底

cumsum(c(TRUE, diff(s) != 0))
#[1] 1 1 1 2 2 3 4 5

答案 2 :(得分:1)

使用基数R中的rleinverse.rle

s <- c(2, 2, 2, 4, 4, 3, 5, 1)

rl <- rle(s)
rl$values <- sort(unique(s))
s <- inverse.rle(rl)

s
# [1] 1 1 1 2 2 3 4 5