Skip to content
Prev 201944 / 398503 Next

Sampling dataframe

Here are some options that may help you out. First,
let's put the data in a format that can be cut-and-pasted
into R.

myData <- read.table(textConnection("var1 var2 var3
1     1    1    1
2     3    1    2
3     8    1    3
4     6    1    4
5    10    1    5
6     2    2    1
7     4    2    2
8     6    2    3
9     8    2    4
10   10    2    5"),header=TRUE,row.names=1)
closeAllConnections()

or

use dput

myData <- structure(list(var1 = c(1L, 3L, 8L, 6L, 10L, 2L, 4L, 6L, 8L,
10L), var2 = c(1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L), var3 = c(1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L)), .Names = c("var1", "var2",
"var3"), class = "data.frame", row.names = c("1", "2", "3", "4",
"5", "6", "7", "8", "9", "10"))


#Select data where v2=1

select_v2 <- myData[myData$var2==1,]

# sample two rows of select_v2

sampled_v2 <- select_v2[sample(1:nrow(select_v2),2),]

# select rows of var3 not equal to 1

select_v3 <- myData[myData$v3 !=1,]

# ?rbind may also come in useful.

2009/11/25 Ronaldo Reis J?nior <chrysopa at gmail.com>: