我有一个包含以下列的数据框
userid:用户的唯一值
transactionId:交易的唯一值(用户可以有许多不同的订单)
created_at:创建订单的日期
网页:用户创建该订单的网页(用户可能针对不同的订单拥有不同的页面,也可以为空)
我正在使用下面的代码按用户ID进行分组,以获取一些用户ID变量,但是在对它进行分组后,我还需要一个变量,称为“第一页”
该变量将是用户拥有的第一个网页,换句话说,该用户ID的网页值,其中created_at的最小值,如果在其created_at的最小值上没有该网页的值,则使用“ N / A”作为该用户ID的值
df_RFM <- data2 %>% group_by(user_id) %>%
summarise(recency = as.numeric(as.Date("2019-02-21")-max(created_at)),
frequenci = n_distinct(transactionId),
monetary = sum(total_in_pennies)/n_distinct(transactionId),
last_active = max(created_at),
min(transactionId))
请帮助创建该“首页”变量,谢谢。
答案 0 :(得分:0)
使用
df_RFM <- data2 %>% group_by(user_id) %>%
arrange(.,created_at, .by_group = TRUE)
对created_at变量进行排序,然后可以使用slice
获取每个userID的第一行。使用该功能,您可以根据网页值mutate
新建一个列。