Hi, I am trying to scramble items in a matrix so that no item repeats on consecutive rows. This generates the matrix:
LevelsOfA = 2 LevelsOfB = 2 LevelsOfC = 3 Items = 10 FactorA = rep(1:LevelsOfA, each=(LevelsOfB*LevelsOfC*Items)) FactorB = rep(rep(1:LevelsOfB, each=(LevelsOfC*Items)),LevelsOfA) FactorC = rep(rep(1:LevelsOfC, each=Items), LevelsOfA*LevelsOfB) TargItems = rep(1:Items, LevelsOfA*LevelsOfB*LevelsOfC) IndexArray = data.frame(FactorA=FactorA, FactorB=FactorB, FactorC=FactorC, TargItems=TargItems) scram = sample(nrow(IndexArray), replace = FALSE) IndexArray = IndexArray[scram,] That's a start, but now I want to continue scrambling IndexArray so that no item in the first 3 columns repeats across more than 3 consecutive rows and that no item repeats more than once in the last column. Is there a reasonably straightforward solution to this? I have tried various loops nested within loops in combination with some pretty ugly if/then statements, but without much success. Thanks for any suggestions. Matthew [[alternative HTML version deleted]] ______________________________________________ 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.