Hi,
You may also try:
vec1 <- (seq(nrow(mm))-1)*ncol(mm)
pos2 <- unlist(mapply("+",pos,vec1))
mm1 <- t(mm)
mm1[pos2] <- unlist(gty)
identical(res,t(mm1))
#[1] TRUEA.K. On Thursday, January 9, 2014 9:40 AM, arun <[email protected]> wrote: Hi, Try: res <- do.call(rbind,lapply(seq_len(nrow(mm)),function(i) {x1 <- mm[i,]; x1[pos[[i]]] <- gty[[i]]; x1})) A.K. On Thursday, January 9, 2014 9:28 AM, Mohammad Tanvir Ahamed <[email protected]> wrote: Hi there !! I have a matrix like > mm [,1] [,2] [,3] [1,] 1 11 21 [2,] 2 12 22 [3,] 3 13 23 I have a list of position index like > pos $row1 [1] 1 3 $row2 [1] 3 2 $row3 [1] 1 3 2 I have a list of values like > gty $v1 9 3 $v2 4 8 $v3 7 4 1 Now i want to replace the value of each row in mm by pos list with value gty > mm [,1] [,2] [,3] [1,] 9 11 3 [2,] 8 12 4 [3,] 7 1 4 Any suggestion regarding this problem will be very helpful . Thank you. Best regards ........................... Tanvir Ahamed Göteborg, Sweden [[alternative HTML version deleted]] ______________________________________________ [email protected] 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. ______________________________________________ [email protected] 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.

