Я не совсем уверен, что понимаю вопрос, но вот один из способов выборки без замены из вектора, а затем разделить этот вектор на два на основе выборки. Это можно легко распространить на другие типы данных (например, data.frame
).
## Example data vector.
X <- c(12345, 23456, 67891, -20000, 200, 600, 20)
## Length of data.
N <- length(X)
## Sample from the data indices, without replacement.
sampled.idx <- sample(1:N, 2, replace=FALSE)
## Select the sampled data elements.
(sampled <- X[sampled.idx])
## Select the non-sampled data elements.
(rest <- X[!(1:N %in% sampled.idx)])
## Update: A better way to do the last step.
## Thanks to @PLapointe's comment below.
(rest <- X[-sampled.idx])