如何在 R 向量中找到非 NA 值的位置?
R 中的 NA 值表示不可用或缺失值,因此它们对任何类型的数学运算都是没有用的。因此,有用的值就是非 NA 值,并且我们可能需要找出这些值的位置。我们可以使用 !is.na 找出 R 中非 NA 值的位置,它的意思是非 NA 值。
示例
set.seed(1) x1<-sample(c(1,2,3,4,NA),50,replace=TRUE) x1 [1] 1 4 1 2 NA 3 2 3 3 1 NA NA 2 2 1 NA NA 1 1 NA NA 2 2 1 4 [26] 1 4 3 2 2 4 4 4 2 4 1 1 4 1 2 3 2 2 NA 2 1 3 3 4 3 Non_NA_Value_position_x1<-which(!is.na(x1)) Non_NA_Value_position_x1 [1] 1 2 3 4 6 7 8 9 10 13 14 15 18 19 22 23 24 25 26 27 28 29 30 31 32 [26] 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 x2<-sample(c(5,15,28,NA,27,35),100,replace=TRUE) x2 [1] 5 NA 27 5 5 35 NA 27 27 NA 35 27 NA NA 5 27 27 35 5 5 28 35 15 15 28 [26] 35 15 NA 28 27 15 15 5 28 28 15 15 27 15 27 NA 27 NA 35 5 28 15 28 28 5 [51] 27 35 35 35 NA NA 5 27 27 35 5 28 35 28 35 28 28 NA 5 5 NA 15 35 5 15 [76] 28 NA 5 28 27 28 NA 15 5 NA 5 NA 15 27 15 15 15 28 5 15 28 28 28 35 28 Non_NA_Value_position_x2<-which(!is.na(x2)) Non_NA_Value_position_x2 [1] 1 3 4 5 6 8 9 11 12 15 16 17 18 19 20 21 22 23 24 [20] 25 26 27 29 30 31 32 33 34 35 36 37 38 39 40 42 44 45 46 [39] 47 48 49 50 51 52 53 54 57 58 59 60 61 62 63 64 65 66 67 [58] 69 70 72 73 74 75 76 78 79 80 81 83 84 86 88 89 90 91 92 [77] 93 94 95 96 97 98 99 100 x3<-sample(c(NA,1:5),100,replace=TRUE) x3 [1] 4 4 3 2 1 1 5 4 1 5 1 4 2 NA 2 NA 5 4 5 2 2 3 5 1 5 [26] NA 5 NA 3 4 5 1 1 3 3 4 5 2 3 3 3 3 2 3 5 1 4 2 5 4 [51] 1 5 2 4 3 3 1 4 4 5 1 4 4 2 1 3 NA 5 2 3 3 1 3 4 NA [76] 4 5 4 NA 2 2 1 3 3 2 5 3 NA 5 3 5 NA 2 2 5 4 4 NA NA 5 Non_NA_Value_position_x3<-which(!is.na(x3)) Non_NA_Value_position_x3 [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 15 17 18 19 20 21 [20] 22 23 24 25 27 29 30 31 32 33 34 35 36 37 38 39 40 41 42 [39] 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 [58] 62 63 64 65 66 68 69 70 71 72 73 74 76 77 78 80 81 82 83 [77] 84 85 86 87 89 90 91 93 94 95 96 97 100 x4<-sample(c(NA,1,3),100,replace=TRUE) x4 [1] 1 3 3 3 1 NA 3 3 1 NA NA 1 3 1 1 3 1 3 3 NA 3 1 1 3 3 [26] 1 NA NA 1 NA 1 NA NA NA 3 1 NA 1 NA 3 NA 1 NA NA 3 1 NA NA 3 NA [51] NA 1 NA 1 3 NA NA 3 NA 3 NA 3 NA NA NA NA 1 NA 1 1 3 1 3 1 1 [76] 1 3 1 1 NA 3 1 3 NA NA 3 3 1 NA NA 1 NA 1 1 1 1 3 1 NA 3 Non_NA_Value_position_x4<-which(!is.na(x4)) Non_NA_Value_position_x4 [1] 1 2 3 4 5 7 8 9 12 13 14 15 16 17 18 19 21 22 23 [20] 24 25 26 29 31 35 36 38 40 42 45 46 49 52 54 55 58 60 62 [39] 67 69 70 71 72 73 74 75 76 77 78 79 81 82 83 86 87 88 91 [58] 93 94 95 96 97 98 100 x5<-sample(c(NA,5),100,replace=TRUE) x5 [1] NA NA NA 5 NA 5 NA 5 NA 5 5 5 NA NA 5 5 5 NA 5 NA 5 5 NA NA NA [26] NA NA NA 5 5 NA 5 5 5 NA 5 5 NA 5 5 5 5 5 5 NA NA 5 5 5 NA [51] 5 NA 5 5 NA NA 5 5 NA 5 NA NA NA 5 NA NA 5 NA NA 5 5 5 5 NA 5 [76] NA 5 NA 5 NA 5 NA NA 5 NA 5 5 NA 5 5 NA 5 NA NA 5 5 5 5 NA NA Non_NA_Value_position_x5<-which(!is.na(x5)) Non_NA_Value_position_x5 [1] 4 6 8 10 11 12 15 16 17 19 21 22 29 30 32 33 34 36 37 39 40 41 42 43 44 [26] 47 48 49 51 53 54 57 58 60 64 67 70 71 72 73 75 77 79 81 84 86 87 89 90 92 [51] 95 96 97 98 Non_NA_Value_position_x6<-which(!is.na(x6)) Non_NA_Value_position_x6 [1] 1 2 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 25 27 28 29 30 [26] 31 32 34 35 36 37 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 [51] 58 59 61 62 63 64 65 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 [76] 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
广告