Hi Silvia, excuse me if I'm missing something but sampling the row numbers should make it :
let M be your matrix, and spM a sample with n rows : spM <- M[sample(seq(1,dim(M)[1],by=1), n),] Regards, Olivier Silvia Lomascolo wrote: > > Hi R community, > I am trying to obtain a sample from a matrix but sample(my.matrix) doesn't > do what I need. I have a matrix of 1287 interactions between the species > in columns and the species in rows and I want to obtain a smaller matrix > with say, 800 interactions, that may or may not have the same number of > columns and/or rows (i.e., some interactions may not be retrieved in a > smaller sample). For example, my original mock matrix M is > > > [,1] [,2] [,3] [,4] [,5] > [1,] 140 100 90 40 20 > [2,] 126 90 81 36 18 > [3,] 84 60 54 24 12 > [4,] 70 50 45 20 10 > [5,] 42 30 27 12 6 > > The command sample(my.matrix) samples whole cells from my matrix, such > that if the interaction between species 1 and 1 is included in the sample, > they always show 140 interactions. But what I want is to sample "cases" > within each cell. My sample matrix S could have =<140 interactions > between species 1 and 1, =<100 between species 1 and 2, etc. Again, if > some combination is absent from the sample matrix, that's OK. > > Here's my code, in case it helps: > > pla<- c(10, 9, 6, 5, 3) #abundance of pla species > pol<- c(14, 10, 9, 4, 2) #abundance of pol species > m<-pla%*%t(pol) #matrix of interactions according to pla and pol abundance > m > [,1] [,2] [,3] [,4] [,5] > [1,] 140 100 90 40 20 > [2,] 126 90 81 36 18 > [3,] 84 60 54 24 12 > [4,] 70 50 45 20 10 > [5,] 42 30 27 12 6 > > sample(m) #doesn't give me what I want... > > I have searched the forum for an answer but all questions regarding > sampling from matrices refer to sampling whole rows or columns, not > "cases" within a matrix. > Thanks in advance for any help! Silvia. > -- View this message in context: http://www.nabble.com/How-do-I-sample-%22cases%22-within-a-matrix--tp23296664p23314865.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.