我有一个 Dataframe ,需要按如下方式进行筛选
library(dplyr)
library(tidyverse)
df = data.frame(x = rep(1,20), y = c(rep(2,5),rep(3,5),11:20) )
df = df%>%group_by(x)%>%filter(y==unique(y))
但是输出是
df = df%>%group_by(x)%>%filter(y==unique(y))
Warning message:
In y == unique(y) :
longer object length is not a multiple of shorter object length
> df
# A tibble: 1 × 2
# Groups: x [1]
x y
<dbl> <dbl>
1 1 2
我所寻找的结果如下
x y
1 1 2
2 1 3
3 1 11
4 1 12
5 1 13
6 1 14
7 1 15
8 1 16
9 1 17
10 1 18
11 1 19
12 1 20
谢谢
2条答案
按热度按时间kd3sttzy1#
我想你要找的是
distinct()
。创建于2023年2月20日,使用reprex v2.0.2
ctzwtxfj2#
在
base R
中,只需使用unique