(D I ) , , , .
set.seed(12008)
n <- 10000
d <- data.frame(c1=1:n, c2=2*(1:n), c3=3*(1:n))
i <- sample.int(3, n, replace=TRUE)
D <- head(d)
I <- head(i)
D :
dmat <- data.matrix(D)
, , I. , ( I), seq_along(I), 1:6. :
(I - 1) * nrow(D) + seq_along(I)
((I - 1) * nrow(D)) ( 6) I th. , n- I th.
, dmat "[", . "[" ("[<-") . NA, , :
> dmat
c1 c2 c3
1 1 2 3
2 2 4 6
3 3 6 9
4 4 8 12
5 5 10 15
6 6 12 18
> dmat[(I - 1) * nrow(D) + seq_along(I)] <- NA
> dmat
c1 c2 c3
1 1 2 NA
2 2 NA 6
3 3 NA 9
4 4 8 NA
5 5 NA 15
6 NA 12 18