I have problems understanding this codeline
x <- 1:5; x[NA]
 NA NA NA NA NA
x <- c(NA, 2, 4); x[NA]
NA NA NA.
Compare your code:
> x <- 1:5; x[NA]  NA NA NA NA NA
> x <- 1:5; x[NA_integer_]  NA
In the first case,
NA is of type logical (
class(NA) shows), whereas in the second it's an integer. From
?"[" you can see that in the case of
i being logical, it is recycled to the length of
For [-indexing only: i, j, ... can be logical vectors, indicating elements/slices to select. Such vectors are recycled if necessary to match the corresponding extent. i, j, ... can also be negative integers, indicating elements/slices to leave out of the selection.