gpt4 book ai didi

R 中的 ROW_NUMBER() OVER (PARTITION BY nick ORDER BY p_time)

转载 作者:行者123 更新时间:2023-11-29 14:23:06 25 4
gpt4 key购买 nike

x=data.frame(nick=c('a','a','b','b','b','c'), p_time=1:6)
nick p_time
1 a 1
2 a 2
3 b 3
4 b 4
5 b 5
6 c 6

如何获取:

  nick p_time flag
1 a 1 1
2 a 2 2
3 b 3 1
4 b 4 2
5 b 5 3
6 c 6 1

我使用 pgsql ROW_NUMBER() OVER (PARTITION BY nick ORDER BY p_time) 来获取它,但现在只需要使用 R。谢谢。

最佳答案

尝试 dplyr::row_number() 函数

x %>% 
group_by(nick) %>%
mutate(flag = row_number())

# A tibble: 6 x 3
# Groups: nick [3]
nick p_time flag
<fct> <int> <int>
1 a 1 1
2 a 2 2
3 b 3 1
4 b 4 2
5 b 5 3
6 c 6 1

更多信息here

关于R 中的 ROW_NUMBER() OVER (PARTITION BY nick ORDER BY p_time),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14976210/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com