Given a set of values and a vector where the values must be found, findThem records the matched values and the position in the vector where the values have been searched for.

findThem(what, where, todf = FALSE, reportnomatch = FALSE)

Arguments

what

a vector a values to be searched for.

where

a vector where values will be searched on.

todf

a logical. Should the output object must be a data frame?

reportnomatch

a logical. If TRUE, values without match are reported #' in the data frame with a NA. Only available if todf is TRUE (default is FALSE).

Value

A list indicating matched positions for each elements of what. If no match is found then NA is returned. If todf is TRUE then a three-columns data frame is returned including values and positions in both what and where vectors.

See also

Examples

x <- stats::rpois(1000,10) findThem(c(10,4,100), x)
#> $`10` #> [1] 1 6 8 12 13 16 19 25 29 34 62 69 71 72 76 79 95 98 #> [19] 109 110 111 112 147 152 154 156 165 173 176 185 190 191 193 207 222 232 #> [37] 240 244 245 251 283 285 286 308 312 338 407 412 421 427 433 435 459 460 #> [55] 470 473 481 496 508 514 525 553 554 558 560 567 572 576 587 588 592 593 #> [73] 596 626 628 629 633 642 687 692 693 719 720 726 735 745 756 757 758 762 #> [91] 780 783 784 799 808 812 821 826 827 828 833 845 867 872 881 906 913 914 #> [109] 915 942 958 961 965 969 973 975 976 982 #> #> $`4` #> [1] 67 307 357 609 652 786 #> #> $`100` #> integer(0) #>
findThem(c(10,4,100), x, todf=TRUE)
#> values what where #> 1 10 1 1 #> 2 10 1 6 #> 3 10 1 8 #> 4 10 1 12 #> 5 10 1 13 #> 6 10 1 16 #> 7 10 1 19 #> 8 10 1 25 #> 9 10 1 29 #> 10 10 1 34 #> 11 10 1 62 #> 12 10 1 69 #> 13 10 1 71 #> 14 10 1 72 #> 15 10 1 76 #> 16 10 1 79 #> 17 10 1 95 #> 18 10 1 98 #> 19 10 1 109 #> 20 10 1 110 #> 21 10 1 111 #> 22 10 1 112 #> 23 10 1 147 #> 24 10 1 152 #> 25 10 1 154 #> 26 10 1 156 #> 27 10 1 165 #> 28 10 1 173 #> 29 10 1 176 #> 30 10 1 185 #> 31 10 1 190 #> 32 10 1 191 #> 33 10 1 193 #> 34 10 1 207 #> 35 10 1 222 #> 36 10 1 232 #> 37 10 1 240 #> 38 10 1 244 #> 39 10 1 245 #> 40 10 1 251 #> 41 10 1 283 #> 42 10 1 285 #> 43 10 1 286 #> 44 10 1 308 #> 45 10 1 312 #> 46 10 1 338 #> 47 10 1 407 #> 48 10 1 412 #> 49 10 1 421 #> 50 10 1 427 #> 51 10 1 433 #> 52 10 1 435 #> 53 10 1 459 #> 54 10 1 460 #> 55 10 1 470 #> 56 10 1 473 #> 57 10 1 481 #> 58 10 1 496 #> 59 10 1 508 #> 60 10 1 514 #> 61 10 1 525 #> 62 10 1 553 #> 63 10 1 554 #> 64 10 1 558 #> 65 10 1 560 #> 66 10 1 567 #> 67 10 1 572 #> 68 10 1 576 #> 69 10 1 587 #> 70 10 1 588 #> 71 10 1 592 #> 72 10 1 593 #> 73 10 1 596 #> 74 10 1 626 #> 75 10 1 628 #> 76 10 1 629 #> 77 10 1 633 #> 78 10 1 642 #> 79 10 1 687 #> 80 10 1 692 #> 81 10 1 693 #> 82 10 1 719 #> 83 10 1 720 #> 84 10 1 726 #> 85 10 1 735 #> 86 10 1 745 #> 87 10 1 756 #> 88 10 1 757 #> 89 10 1 758 #> 90 10 1 762 #> 91 10 1 780 #> 92 10 1 783 #> 93 10 1 784 #> 94 10 1 799 #> 95 10 1 808 #> 96 10 1 812 #> 97 10 1 821 #> 98 10 1 826 #> 99 10 1 827 #> 100 10 1 828 #> 101 10 1 833 #> 102 10 1 845 #> 103 10 1 867 #> 104 10 1 872 #> 105 10 1 881 #> 106 10 1 906 #> 107 10 1 913 #> 108 10 1 914 #> 109 10 1 915 #> 110 10 1 942 #> 111 10 1 958 #> 112 10 1 961 #> 113 10 1 965 #> 114 10 1 969 #> 115 10 1 973 #> 116 10 1 975 #> 117 10 1 976 #> 118 10 1 982 #> 119 4 2 67 #> 120 4 2 307 #> 121 4 2 357 #> 122 4 2 609 #> 123 4 2 652 #> 124 4 2 786
findThem(c(10,4,100), x, todf=TRUE, reportnomatch=TRUE)
#> values what where #> 1 10 1 1 #> 2 10 1 6 #> 3 10 1 8 #> 4 10 1 12 #> 5 10 1 13 #> 6 10 1 16 #> 7 10 1 19 #> 8 10 1 25 #> 9 10 1 29 #> 10 10 1 34 #> 11 10 1 62 #> 12 10 1 69 #> 13 10 1 71 #> 14 10 1 72 #> 15 10 1 76 #> 16 10 1 79 #> 17 10 1 95 #> 18 10 1 98 #> 19 10 1 109 #> 20 10 1 110 #> 21 10 1 111 #> 22 10 1 112 #> 23 10 1 147 #> 24 10 1 152 #> 25 10 1 154 #> 26 10 1 156 #> 27 10 1 165 #> 28 10 1 173 #> 29 10 1 176 #> 30 10 1 185 #> 31 10 1 190 #> 32 10 1 191 #> 33 10 1 193 #> 34 10 1 207 #> 35 10 1 222 #> 36 10 1 232 #> 37 10 1 240 #> 38 10 1 244 #> 39 10 1 245 #> 40 10 1 251 #> 41 10 1 283 #> 42 10 1 285 #> 43 10 1 286 #> 44 10 1 308 #> 45 10 1 312 #> 46 10 1 338 #> 47 10 1 407 #> 48 10 1 412 #> 49 10 1 421 #> 50 10 1 427 #> 51 10 1 433 #> 52 10 1 435 #> 53 10 1 459 #> 54 10 1 460 #> 55 10 1 470 #> 56 10 1 473 #> 57 10 1 481 #> 58 10 1 496 #> 59 10 1 508 #> 60 10 1 514 #> 61 10 1 525 #> 62 10 1 553 #> 63 10 1 554 #> 64 10 1 558 #> 65 10 1 560 #> 66 10 1 567 #> 67 10 1 572 #> 68 10 1 576 #> 69 10 1 587 #> 70 10 1 588 #> 71 10 1 592 #> 72 10 1 593 #> 73 10 1 596 #> 74 10 1 626 #> 75 10 1 628 #> 76 10 1 629 #> 77 10 1 633 #> 78 10 1 642 #> 79 10 1 687 #> 80 10 1 692 #> 81 10 1 693 #> 82 10 1 719 #> 83 10 1 720 #> 84 10 1 726 #> 85 10 1 735 #> 86 10 1 745 #> 87 10 1 756 #> 88 10 1 757 #> 89 10 1 758 #> 90 10 1 762 #> 91 10 1 780 #> 92 10 1 783 #> 93 10 1 784 #> 94 10 1 799 #> 95 10 1 808 #> 96 10 1 812 #> 97 10 1 821 #> 98 10 1 826 #> 99 10 1 827 #> 100 10 1 828 #> 101 10 1 833 #> 102 10 1 845 #> 103 10 1 867 #> 104 10 1 872 #> 105 10 1 881 #> 106 10 1 906 #> 107 10 1 913 #> 108 10 1 914 #> 109 10 1 915 #> 110 10 1 942 #> 111 10 1 958 #> 112 10 1 961 #> 113 10 1 965 #> 114 10 1 969 #> 115 10 1 973 #> 116 10 1 975 #> 117 10 1 976 #> 118 10 1 982 #> 119 4 2 67 #> 120 4 2 307 #> 121 4 2 357 #> 122 4 2 609 #> 123 4 2 652 #> 124 4 2 786 #> 125 100 3 NA