【发布时间】:2016-03-30 01:56:32
【问题描述】:
我有一个数据框:
df<-data.frame(P = c("A","A","A", "B","B","B", "C", "C", "C"),
index = c("ind1","ind2","ind3","ind1","ind2","ind3","ind1","ind2","ind3"),
var = c(2,1,1,8,5,4,2,8,6))
我想为每个P 的值获取var 的所有最小值及其关联的index。
我可以这样做:
DT <- data.table(df)
DT[ ,.SD[which.min(var)], by = P]
它仅给出P 的一个最小值var(第一个):
P index var 1: A ind2 1 2: B ind3 4 3: C ind1 2
我想:
P index var 1: A ind2 1 2: A ind3 1 2: B ind3 4 3: C ind1 2
想法?
【问题讨论】:
-
据我了解,您需要索引和 P 的每个唯一配对的最小值......但是,您想要的输出如何对 P == 'A' 有两个观察值?然而,与此同时,根据同样的规则,您只能对“B”和“C”的 P 值进行独特的观察。
标签: r data.table minimum