用户ID出现在R中数据框中的第一个日期

用户ID出现在R中数据框中的第一个日期,r,R,我想在数据框中按行分组数据。每个用户都有一个唯一的用户ID,每个用户可能会在数据帧中出现好几次。每次它们出现时都有一列。例如,user01可能已在2014年1月10日和2014年2月10日登录,因此user01将显示在两行中 我想要每个用户出现的第一个实例。如何在R或Excel中执行此操作?我觉得这在SQL中很容易做到,所以我肯定错过了一些明显的东西…在R中你可以做到的 df <- read.table(col.names=c("date", "user"), text='"10-01-2

我想在数据框中按行分组数据。每个用户都有一个唯一的用户ID,每个用户可能会在数据帧中出现好几次。每次它们出现时都有一列。例如,user01可能已在2014年1月10日和2014年2月10日登录,因此user01将显示在两行中

我想要每个用户出现的第一个实例。如何在R或Excel中执行此操作?我觉得这在SQL中很容易做到,所以我肯定错过了一些明显的东西…

在R中你可以做到的

df <- read.table(col.names=c("date", "user"), text='"10-01-2014" "user1"
"10-02-2014" "user1"
"10-01-2015" "user2"
"10-02-2015" "user2"')
df$date <- as.Date(df$date, "%d-%m-%Y")
aggregate(date~user, df, head, 1)
#    user       date
# 1 user1 2014-01-10
# 2 user2 2015-01-10

df要查找第一个外观,可以对数据对象使用“min”命令:

#sort id by order of first arrival
first<-tapply(df$arrival_date, df$userID, min)
first<-sort(as.Date(first, origin = "1970-01-01"))
#按首次到达顺序排序id

首先,你应该展示一些数据;但基本上,
library(dplyr);分组依据(df,userid)%%>%arrange(date)%%>%filter(row\u number()==1)