在 R 向量中忽略缺失值创建随机样本。


要忽略 R 向量中的缺失值创建随机样本,我们可以使用 sample 函数和向量名称的 is.na 的否定。

例如,如果我们有一个名为 X 的向量包含一些 NA,那么我们可以使用下面给出的命令创建大小为 100 的 X 值的随机样本。

sample(X[!is.na(X)],100,replace=TRUE)

示例 1

要忽略 R 向量中的缺失值创建随机样本,请使用下面给出的命令。

x1<-c(NA,2,5)
sample(x1[!is.na(x1)],200,replace=TRUE)

输出

如果执行上面给出的命令,它将生成以下输出。

[1]   5 5 5 2 2 2 5 5 5 5 2 5 2 5 5 2 2 2 2 5 2 2 5 5 5 5 2 2 5 2 5 2 2 2 2 5 2
[38]  2 2 2 2 2 2 2 2 2 5 5 2 2 2 5 5 5 5 2 5 5 2 5 2 2 2 5 5 2 5 5 5 5 2 2 2 2
[75]  2 2 2 2 5 2 5 5 2 5 2 2 5 5 5 2 2 2 2 2 2 5 5 2 2 2 5 2 5 2 2 2 2 5 2 2 2
[112] 2 5 2 5 2 5 2 2 2 5 2 2 5 5 5 2 2 5 2 5 5 2 2 5 2 2 2 5 2 2 2 2 5 5 5 2 2
[149] 5 2 2 2 2 5 2 5 5 5 5 5 5 2 5 2 5 5 2 2 5 5 5 5 2 5 5 2 5 2 5 5 2 5 5 5 2
[186] 2 5 5 2 5 2 5 5 5 5 2 5 5 5 2

示例 2

要忽略 R 向量中的缺失值创建随机样本,请使用下面给出的命令。

x2<-c(NA,rnorm(5))
sample(x2[!is.na(x2)],100,replace=TRUE)

输出

如果执行上面给出的命令,它将生成以下输出。

[1]  -0.9043329 0.4519504 0.4519504 -0.8380657 0.1107640 1.0243951
[7]  -0.8380657 0.1107640 0.4519504 0.1107640 -0.8380657 0.1107640
[13] -0.8380657 1.0243951 0.1107640 0.1107640 -0.8380657 -0.9043329
[19]  0.4519504 -0.9043329 1.0243951 -0.8380657 -0.8380657 1.0243951
[25] -0.8380657 -0.8380657 0.1107640 0.1107640 1.0243951 -0.9043329
[31]  0.4519504 0.4519504 0.4519504 -0.9043329 1.0243951 -0.9043329
[37]  1.0243951 -0.9043329 0.1107640 1.0243951 1.0243951 1.0243951
[43] -0.8380657 1.0243951 1.0243951 0.1107640 -0.8380657 -0.8380657
[49]  0.1107640 -0.9043329 0.1107640 -0.9043329 0.1107640 -0.8380657
[55]  0.4519504 0.1107640 1.0243951 0.1107640 0.1107640 0.1107640
[61] -0.8380657 -0.8380657 1.0243951 1.0243951 1.0243951 0.4519504
[67]  0.1107640 -0.9043329 1.0243951 -0.8380657 -0.8380657 -0.8380657
[73]  1.0243951 1.0243951 0.4519504 1.0243951 0.1107640 1.0243951
[79] -0.9043329 0.1107640 -0.9043329 -0.9043329 -0.9043329 -0.9043329
[85]  1.0243951 0.1107640 0.4519504 0.4519504 0.4519504 0.4519504
[91] -0.9043329 0.4519504 -0.8380657 0.1107640 0.1107640 1.0243951
[97] -0.8380657 -0.8380657 0.1107640 -0.9043329

示例 3

要忽略 R 向量中的缺失值创建随机样本,请使用下面给出的命令。

x3<-c(NA,rpois(5,25))
x3

输出

如果执行上述命令,它将生成以下输出。

[1] NA 25 29 20 34 30

要忽略 R 向量中的缺失值创建随机样本,请将以下代码添加到上述代码段中。

x3<-c(NA,rpois(5,25))
sample(x3[!is.na(x3)],200,replace=TRUE)

输出

如果将以上所有代码段作为单个程序执行,它将生成以下输出。

[1]   29 30 25 29 30 29 34 29 20 30 25 29 29 30 34 25 25 30 25 29 30 34 30 20 25
[26]  34 30 20 29 29 25 20 29 25 34 34 30 30 29 20 29 30 30 34 20 25 25 29 30 29
[51]  30 20 25 29 20 25 29 34 20 20 25 34 29 34 34 20 25 29 20 30 20 20 20 20 25
[76]  30 25 25 25 34 30 34 34 29 30 25 25 29 29 30 25 34 30 30 34 29 29 25 34 29
[101] 30 20 25 30 29 25 34 25 34 34 34 34 30 29 34 25 20 29 29 20 34 30 20 25 29
[126] 34 34 34 30 20 34 25 30 34 34 29 20 25 25 20 29 34 29 20 30 30 34 34 25 30
[151] 30 30 25 30 34 20 29 25 30 30 25 29 25 34 25 20 34 20 20 29 25 20 29 30 25
[176] 25 25 20 29 30 29 25 29 34 29 25 29 30 20 34 29 25 29 29 34 29 25 25 25 30

示例 4

要忽略 R 向量中的缺失值创建随机样本,请使用下面给出的命令。

x4<-c(NA,rpois(10,500))
sample(x4[!is.na(x4)],200,replace=TRUE)

输出

如果执行上面给出的命令,它将生成以下输出。

[1]   489 490 495 501 520 479 489 495 479 511 489 495 479 521 501 490 520 521
[19]  479 492 479 511 501 489 511 495 501 501 501 511 490 511 521 520 479 520
[37]  511 521 521 511 489 501 492 520 492 479 489 520 479 492 479 495 501 492
[55]  511 479 501 492 495 479 520 492 521 489 520 520 479 521 479 501 520 511
[73]  520 492 520 501 492 521 501 489 521 495 495 520 501 479 489 479 490 501
[91]  495 520 479 501 511 511 479 521 501 490 511 511 501 520 479 520 501 501
[109] 520 511 520 479 520 521 520 492 490 479 501 479 501 489 511 521 479 520
[127] 501 479 501 495 521 495 501 490 489 479 501 492 489 521 520 511 511 489
[145] 489 495 479 521 501 489 492 521 495 489 521 520 495 490 490 495 490 479
[163] 520 479 492 521 490 520 495 511 479 495 495 495 479 511 501 479 511 489
[181] 520 495 490 492 492 492 492 520 520 479 489 490 492 479 501 490 495 520
[199] 495 479

示例 5

要忽略 R 向量中的缺失值创建随机样本,请使用下面给出的命令。

x5<-c(NA,runif(10,5,10))
sample(x5[!is.na(x5)],100,replace=TRUE)

输出

如果执行上面给出的命令,它将生成以下输出。

[1]  7.617784 5.474288 5.461393 5.461393 9.459706 6.447721 8.498105 9.459706
[9]  7.617784 6.004828 7.004422 7.004422 7.617784 7.617784 9.459706 5.118856
[17] 6.447721 7.004422 7.004422 6.004828 9.459706 6.447721 8.498105 7.004422
[25] 7.004422 8.498105 6.447721 6.004828 9.459706 9.459706 5.474288 7.617784
[33] 5.461393 6.004828 7.617784 9.459706 8.498105 7.004422 7.004422 6.447721
[41] 5.474288 5.039730 6.004828 6.004828 7.004422 6.004828 5.118856 5.039730
[49] 5.118856 7.617784 7.004422 5.039730 6.004828 9.459706 7.004422 5.474288
[57] 6.447721 7.617784 5.474288 9.459706 5.461393 5.039730 5.461393 5.039730
[65] 7.617784 7.617784 5.039730 5.461393 6.004828 5.039730 5.461393 5.118856
[73] 6.447721 5.474288 6.447721 6.447721 5.474288 5.118856 5.039730 5.474288
[81] 5.474288 7.617784 5.461393 9.459706 5.039730 7.617784 5.461393 5.461393
[89] 9.459706 6.447721 6.004828 8.498105 7.004422 5.039730 6.004828 8.498105
[97] 8.498105 6.447721 7.004422 9.459706

更新于: 2021-11-03

293 次浏览

启动您的 职业生涯

通过完成课程获得认证

开始
广告