R 在数据框列中保留唯一元素

R 在数据框列中保留唯一元素,r,dataframe,unique,R,Dataframe,Unique,我将试着用一个例子来解释我的问题 df <- data.frame(VIN=paste("vin", c(1:6,2), sep = ""), KM=c(15, 48, 545, 544, 874, 6523, 1422)) df> p>这里有两个选项要考虑。 第一个使用rank: df[with(df, ave(KM, VIN, FUN = rank)) == 1, ] # VIN KM # 1 vin1 15 # 2 vin2

我将试着用一个例子来解释我的问题

df <- data.frame(VIN=paste("vin", c(1:6,2), sep = ""), 
                 KM=c(15, 48, 545, 544, 874, 6523, 1422))

<代码> df> p>这里有两个选项要考虑。 第一个使用
rank

df[with(df, ave(KM, VIN, FUN = rank)) == 1, ]
#    VIN   KM
# 1 vin1   15
# 2 vin2   48
# 3 vin3  545
# 4 vin4  544
# 5 vin5  874
# 6 vin6 6523
第二种方法取决于顺序和`重复(在某种程度上似乎更直观,但要求您在继续之前对数据进行排序)


X谢谢!我更喜欢第二个。再问一个问题,X[!duplicated(X$VIN),]删除所有重复的VIN并保留第一个@莫斯塔法里菲,我在评论中没有看到任何问题。问题是什么?没关系,我只是理解我的问题。再次感谢你!
X <- df[with(df, order(VIN, KM)), ]
X[!duplicated(X$VIN), ]
#    VIN   KM
# 1 vin1   15
# 2 vin2   48
# 3 vin3  545
# 4 vin4  544
# 5 vin5  874
# 6 vin6 6523