如何在R语言中删除向量中的特定值?


要删除向量中的特定值,我们可以使用值的否定。

例如,如果我们有一个名为V的向量,其中包含从1到10的重复值,并且我们想从V中删除所有10,那么我们可以使用以下命令:

V<-V[V!=10]

示例1

为了从向量x1中删除0,请使用以下代码:

x1<-rpois(100,2)
x1

如果您执行上述代码,它将生成以下输出:

[1] 1 1 1 1 3 1 1 2 3 4 2 2 1 2 2 5 2 1 4 1 2 1 2 3 1 3 1 1 4 4 3 3 4 2 0 1 1
[38] 2 1 0 0 2 5 1 1 3 1 1 2 1 1 4 1 4 0 1 0 2 2 1 2 2 1 4 2 2 2 5 4 2 0 0 1 8
[75] 1 2 4 1 2 0 0 1 0 0 2 4 1 3 1 1 3 1 3 0 2 3 1 2 8 4

现在,要从向量x1中删除0,请将以下代码添加到上述代码中:

x1<-rpois(100,2)
x1<-x1[x1!=0]
x1

输出

如果您将上述所有代码作为一个程序执行,它将生成以下输出:

[1] 1 1 1 1 3 1 1 2 3 4 2 2 1 2 2 5 2 1 4 1 2 1 2 3 1 3 1 1 4 4 3 3 4 2 1 1 2 1
[39] 2 5 1 1 3 1 1 2 1 1 4 1 4 1 2 2 1 2 2 1 4 2 2 2 5 4 2 1 8 1 2 4 1 2 1 2 4 1
[77] 3 1 1 3 1 3 2 3 1 2 8 4

示例2

考虑以下向量x2的代码:

x2<-rpois(200,5)
x2

如果您执行上述代码,它将生成以下输出:

[1] 7 5 3 8 1 6 4 5 7 4 3 5 7 5 7 8 9 7 7 10 7 5 8 4 3
[26] 3 7 9 2 4 3 4 5 5 4 8 6 6 6 2 3 5 2 3 10 2 8 11 8 7
[51] 6 2 5 7 3 5 4 3 4 10 4 6 7 4 1 6 8 6 4 4 5 4 2 3 3
[76] 6 6 5 6 8 4 15 3 4 4 5 6 6 4 2 7 3 1 8 1 10 5 8 4 6
[101] 2 3 7 3 6 5 6 4 7 2 3 4 2 7 3 5 7 2 4 5 7 6 6 3 1
[126] 9 5 5 2 8 4 6 5 5 6 5 8 7 6 2 3 7 2 1 8 5 6 10 6 4
[151] 5 6 7 6 8 0 4 9 6 11 2 6 7 4 2 7 6 6 8 6 6 5 4 6 2
[176] 9 7 5 6 9 2 6 7 10 4 3 5 3 3 8 3 2 5 6 9 6 3 4 4 8

现在,要从向量x2中删除5,请将以下代码添加到上述代码中:

x2<-x2[x2!=5]
x2

输出

如果您将上述所有代码作为一个程序执行,它将生成以下输出:

[1] 7 3 8 1 6 4 7 4 3 7 7 8 9 7 7 10 7 8 4 3 3 7 9 2 4
[26] 3 4 4 8 6 6 6 2 3 2 3 10 2 8 11 8 7 6 2 7 3 4 3 4 10
[51] 4 6 7 4 1 6 8 6 4 4 4 2 3 3 6 6 6 8 4 15 3 4 4 6 6
[76] 4 2 7 3 1 8 1 10 8 4 6 2 3 7 3 6 6 4 7 2 3 4 2 7 3
[101] 7 2 4 7 6 6 3 1 9 2 8 4 6 6 8 7 6 2 3 7 2 1 8 6 10
[126] 6 4 6 7 6 8 0 4 9 6 11 2 6 7 4 2 7 6 6 8 6 6 4 6 2
[151] 9 7 6 9 2 6 7 10 4 3 3 3 8 3 2 6 9 6 3 4 4 8

示例3

考虑以下向量x3的代码:

x3<-sample(0:9,200,replace=TRUE)
x3

如果您执行上述代码,它将生成以下输出:

[1] 4 9 7 6 3 9 8 6 2 8 0 2 7 1 3 0 8 6 2 3 4 9 9 0 5 2 4 6 3 0 3 4 3 1 3 0 3
[38] 5 9 5 8 8 3 9 8 4 5 3 5 2 3 1 4 0 8 7 3 1 8 9 5 6 4 2 5 3 1 3 1 0 9 8 5 1
[75] 8 4 4 1 5 6 8 1 5 7 0 4 3 7 0 1 4 5 4 5 2 0 5 8 8 3 0 4 0 2 0 5 6 9 8 8 6
[112] 0 2 6 4 7 7 6 1 9 7 7 2 6 3 0 5 3 5 6 0 1 6 9 2 9 5 2 9 4 5 3 5 5 6 5 1 7
[149] 6 3 4 8 2 0 0 2 7 0 1 4 1 1 6 6 2 7 2 3 7 7 9 7 6 7 3 8 1 2 2 9 8 7 8 9 2
[186] 1 8 7 6 4 0 5 2 9 3 4 2 3 7 9

现在,要从向量x3中删除4,请将以下代码添加到上述代码中:

x3<-sample(0:9,200,replace=TRUE)
x3<-x3[x3!=4]
x3

输出

如果您将上述所有代码作为一个程序执行,它将生成以下输出:

[1] 9 7 6 3 9 8 6 2 8 0 2 7 1 3 0 8 6 2 3 9 9 0 5 2 6 3 0 3 3 1 3 0 3 5 9 5 8
[38] 8 3 9 8 5 3 5 2 3 1 0 8 7 3 1 8 9 5 6 2 5 3 1 3 1 0 9 8 5 1 8 1 5 6 8 1 5
[75] 7 0 3 7 0 1 5 5 2 0 5 8 8 3 0 0 2 0 5 6 9 8 8 6 0 2 6 7 7 6 1 9 7 7 2 6 3
[112] 0 5 3 5 6 0 1 6 9 2 9 5 2 9 5 3 5 5 6 5 1 7 6 3 8 2 0 0 2 7 0 1 1 1 6 6 2
[149] 7 2 3 7 7 9 7 6 7 3 8 1 2 2 9 8 7 8 9 2 1 8 7 6 0 5 2 9 3 2 3 7 9

示例4

考虑以下向量x4的代码:

x4<-sample(1:10,200,replace=TRUE)
x4

如果您执行上述代码,它将生成以下输出:

[1] 10 2 5 6 8 10 1 5 8 4 5 6 5 8 5 10 1 1 3 6 7 9 8 7 9
[26] 1 9 4 6 10 3 1 6 6 9 8 5 1 2 8 2 8 3 5 1 9 7 2 2 10
[51] 3 10 2 6 9 4 10 2 4 4 10 8 3 3 4 10 3 4 7 1 10 10 10 10 7
[76] 6 1 3 4 4 9 9 7 7 2 9 7 2 6 2 9 4 10 5 5 2 3 10 4 5
[101] 6 3 7 4 5 9 3 10 6 2 2 2 9 3 3 9 5 8 9 10 1 2 7 6 8
[126] 10 4 10 4 2 9 2 10 8 9 6 4 7 8 2 9 7 3 3 7 5 10 10 2 1
[151] 7 2 10 6 6 9 7 10 6 5 2 7 10 4 9 3 7 4 7 2 8 5 1 1 10
[176] 8 9 9 2 4 2 9 9 10 7 4 1 5 7 9 9 2 10 8 1 1 8 5 9 10

现在,要从向量x4中删除1,请将以下代码添加到上述代码中:

x4<-sample(1:10,200,replace=TRUE)
x4<-x4[x4!=1]
x4

输出

如果您将上述所有代码作为一个程序执行,它将生成以下输出:

[1] 10 2 5 6 8 10 5 8 4 5 6 5 8 5 10 3 6 7 9 8 7 9 9 4 6
[26] 10 3 6 6 9 8 5 2 8 2 8 3 5 9 7 2 2 10 3 10 2 6 9 4 10
[51] 2 4 4 10 8 3 3 4 10 3 4 7 10 10 10 10 7 6 3 4 4 9 9 7 7
[76] 2 9 7 2 6 2 9 4 10 5 5 2 3 10 4 5 6 3 7 4 5 9 3 10 6
[101] 2 2 2 9 3 3 9 5 8 9 10 2 7 6 8 10 4 10 4 2 9 2 10 8 9
[126] 6 4 7 8 2 9 7 3 3 7 5 10 10 2 7 2 10 6 6 9 7 10 6 5 2
[151] 7 10 4 9 3 7 4 7 2 8 5 10 8 9 9 2 4 2 9 9 10 7 4 5 7
[176] 9 9 2 10 8 8 5 9 10

示例5

考虑以下向量x5的代码:

x5<-rpois(200,1)
x5

如果您执行上述代码,它将生成以下输出:

[1] 2 1 1 1 4 1 0 0 1 2 0 0 1 2 1 0 1 1 3 0 0 3 0 2 3 0 1 0 1 2 1 0 0 2 0 0 0
[38] 1 3 2 1 0 0 1 0 4 1 0 0 3 2 1 1 1 1 2 2 1 2 0 0 0 0 1 1 1 0 0 3 0 2 1 0 0
[75] 0 1 1 2 3 1 0 3 0 0 0 0 0 3 0 3 0 0 0 0 2 0 0 1 1 1 2 2 1 1 0 0 0 1 1 1 0
[112] 2 1 2 2 1 2 1 0 0 3 0 1 2 3 0 1 0 1 0 0 1 0 1 1 1 2 0 2 1 1 0 2 1 1 2 0 2
[149] 0 0 0 3 3 3 2 0 0 2 0 1 1 1 0 3 0 1 0 1 0 3 1 1 0 2 4 2 0 0 1 2 0 0 0 1 1
[186] 0 0 1 1 2 0 0 3 1 0 0 2 1 1 1

现在,要从向量x5中删除0,请将以下代码添加到上述代码中:

x5<-rpois(200,1)
x5<-x5[x5!=0]
x5

输出

如果您将上述所有代码作为一个程序执行,它将生成以下输出:

[1] 2 1 1 1 4 1 1 2 1 2 1 1 1 3 3 2 3 1 1 2 1 2 1 3 2 1 1 4 1 3 2 1 1 1 1 2 2
[38] 1 2 1 1 1 3 2 1 1 1 2 3 1 3 3 3 2 1 1 1 2 2 1 1 1 1 1 2 1 2 2 1 2 1 3 1 2
[75] 3 1 1 1 1 1 1 2 2 1 1 2 1 1 2 2 3 3 3 2 2 1 1 1 3 1 1 3 1 1 2 4 2 1 2 1 1
[112] 1 1 2 3 1 2 1 1 1

更新于:2021年11月12日

1K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告