I wonder why [preProcess](http://topepo.github.io/caret/preprocess.html#impute) function from R's caret package used for imputation of dataset's missing values returns less observations than in original dataset?  

For example:

```
library(caret)

t <- data.frame(seq_len(100000),seq_len(100000))

for (i in 1:100000) 
{
if (i %% 10 == 0) t[i,1] <- NA; 
if (i %% 100 == 0) t[i,2] <- NA 
}

preProcValues <- preProcess(t, method = c("knnImpute"))

```

preProcValues will contain only 90000 observations of 2 variables while 100000 is expected.