我有一个包含2列的数据集:user和seconds。用户是分类变量,为每个用户分配一个号码。用户可以在数据集中多次出现。秒表示在页面上花费的时间。
我已经使用user seconds
1 35
1 30
1 25
1 20
2 15
1 15
2 10
1 10
2 5
1 5
,因此R将用户变量识别为分类。但是,我无法弄清楚如何找到每个用户的最小秒数。也就是说,我可以找到总的最小秒数,但我找不到用户1的最小值或用户2的最小值。有关如何进行的任何建议吗?
数据
<symbol id="icon" viewBox="0 0 32 32" fill="none" stroke="currentColor" stroke-width="2">
答案 0 :(得分:2)
我们可以使用data.table
library(data.table)
setDT(df1)[, list(Min=min(seconds)), by = user]
或
library(dplyr)
df1 %>%
group_by(user) %>%
summarise(Min = min(seconds))
答案 1 :(得分:1)
这是R的基本内容。
tapply(df1$seconds, df1$user, min)
# 1 2
# 5 5
答案 2 :(得分:1)
假设您的数据位于数据框“x”
中聚合(秒〜用户,数据= x,FUN =最小)