1) Do you really need to turn rows 3, 6, 9 of mat into NA ? I would suggest the use of usediff() to remove them after complete.cases
2) The trick is to create a matrix of the same dimension as 'mat' but initialised with NAs followed by replacing the required rows. Example : w <- which( complete.cases(mat) ) w <- setdiff( w, c(3,6,9) ) out <- matrix( NA, nr=nrow(mat), nc=ncol(mat) ) out[ w, ] <- 2 * mat[ w, ] Regards, Adai On Mon, 2005-08-29 at 18:11 +0200, Ido M. Tamir wrote: > Hi, > > suppose I have a matrix (or dataframe) > as a result from subsetting. > > mat <- matrix(1:20,ncol=2) > mat[c(3,6,9),] <- NA > cc <- complete.cases(mat) > sub <- mat[cc,,drop=FALSE] > sub <- sub * 2 > #some caluculations with sub. > > now I would like to expand sub somehow > so row 3,6, and 9 would be filled with > NAs but the rest should be in place again. > Is there a simple function for this? > > merge is not an option. > > Thank you very much for your help. > > Ido > > > [,1] [,2] > [1,] 2 22 > [2,] 4 24 > [3,] NA NA > [4,] 8 28 > [5,] 10 30 > [6,] NA NA > [7,] 14 34 > [8,] 16 36 > [9,] NA NA > [10,] 20 40 > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html