【发布时间】:2018-08-12 02:47:48
【问题描述】:
我希望通过从第一个数据帧中选择最大子集来从另一个数据帧创建一个数据帧。假设我有第一个数据框
df:
name date weekday util
---- ---- ------- ----
alpha 201801 1 10.1
alpha 201801 2 7.1
alpha 201801 3 1.1
alpha 201801 4 4.1
bravo 201801 1 9.9
bravo 201801 2 8.9
bravo 201801 3 1.9
bravo 201801 4 11.9
charlie 201801 1 0.1
charlie 201801 2 2.0
charlie 201801 3 7.3
charlie 201801 4 5.0
我希望使用 max util 为每个唯一的日期创建另一个数据框,名称元组
df_unique:
name date util
----- ---- ----
alpha 201801 10.1
bravo 201801 11.9
charlie 201801 7.3
我知道我们可以通过使用来选择最大值
>max(df[df$name == 'alpha' && df$date == 201801, df$util])
10.1
但是,我们将如何为每个唯一名称、日期元组执行此操作。这甚至可能还是我需要创建一个函数来做到这一点?
【问题讨论】:
-
aggregate(df1["util"], df1[c("name", "date")], max)