如何在R中找到%in%的对立面?

要找到%in%的反义词,我们可以使用求反运算符!(感叹号)。例如,如果我们有一个数据框df,其中包含一个表示x的列,然后通过排除一些值(例如2、3)将其分配给df子集,则可以使用命令cluster(df ,! )))。

例1

考虑以下数据帧-

x1<-rpois(20,5)
y1<-rpois(20,5)
df1<-data.frame(x1,y1)
df1
输出结果
   x1 y1
1  5  2
2  5  8
3  6  5
4  7  2
5  7  6
6  5  3
7  3  4
8  3  8
9  7  4
10 4  4
11 7  4
12 7  5
13 8  7
14 7  6
15 4  4
16 5  7
17 6  7
18 3  6
19 3  5
20 5  6

通过使用%in%的反义子集df1-

子集(df1,!(x1%in%c(7,6,4)))

   x1 y1
1  5  2
2  5  8
6  5  3
7  3  4
8  3  8
13 8  7
16 5  7
18 3  6
19 3  5
20 5  6

例2

x2<-sample(LETTERS[1:5],20,replace=TRUE)
y2<-sample(LETTERS[1:3],20,replace=TRUE)
df2<-data.frame(x2,y2)
df2
输出结果
   x2 y2
1  A  B
2  D  B
3  C  A
4  D  C
5  D  B
6  A  C
7  A  A
8  B  C
9  E  C
10 D  A
11 D  B
12 D  B
13 E  C
14 B  C
15 B  A
16 B  A
17 C  B
18 E C
19 A C
20 C B

通过使用%in%的反义子集df2-

子集(df2,!(x2%in%c(“ D”,“ E”)))

   x2 y2
1  A  B
3  C  A
6  A  C
7  A  A
8  B  C
14 B  C
15 B  A
16 B  A
17 C  B
19 A  C
20 C  B