我的数据框看起来像
name val Info
a 1.1 'Info_a1.1'
a 0.1 'Info_a0.1'
b 0.2 'Info_b0.2'
a 0.3 ...
b 0.4
c 0.4
c 0.5
我想找到每个名字的最小值,并返回行(唯一的一个是enought)看起来像
name val Info
a 0.1 'Info_a0.1'
b 0.2 'Info_b0.2'
c 0.4 'Info_c0.4'
...
我该怎么做。
答案 0 :(得分:2)
或data.table
解决方案
library(data.table)
setDT(dat)[, list(val = min(val), Info = Info[which.min(val)]), by = name] # dat is your data set
## name val Info
##1: a 0.1 Info_a0.1
##2: b 0.2 Info_b0.2
##3: c 0.4 Info_c0.4