Your data:
mydata <- read.table(text = "id var1 var2
1 5.1 1.2
1 4.7 0.9
2 3.3 1.6
3 3.4 5.7
4 7.9 1.3", header = TRUE)
Sample two id
values:
set.seed(1)
ids <- sample(unique(mydata$id), 2) # important: the UNIQUE id numbers
# [1] 2 4
Extract subset:
mydata[mydata$id %in% ids, ]
# id var1 var2
# 3 2 3.3 1.6
# 5 4 7.9 1.3